自定义文件类型的保存和读出
文件类型是文件的一种格式。我们常见格式,如:".txt"、".exe"。它们指的是文件的一种保存方式,并且我们每次读出其中的消息的时候也会按照这一种相应的方式。
老师告诉我们这些格式都是由大公司们自己确定的,然后让全球来遵守。于是,下面我就带着大家来创建自己的个人文件格式,由自己来遵守。当我们的影响力超过了乔布斯的时候,这格式也会叫全球共同认可滴。
创建的一种新的文件格式“.hhf”——文件的前面部分为文件的说明文件名,文件的大小;文件的后面部分为文件的内容。
创建这种新文件格式还应该包含两个部分——文件的创建保存,和文件的读取。
/*
* 将二维数组中的数据保存到指定的文件中 (文件头信息 文件大小宽高 文件数据( 二维数组中的数据))
*
* @param array 要保存的二位数组
*
* @param path 存入的文件路径
*/
public void saveFile(int[][] array, String path) {
try {
// 文件输出流
FileOutputStream fos = new FileOutputStream(path);
// 将文件输出流包装成可写基本数据类型的数据流
DataOutputStream dos = new DataOutputStream(fos);
// 写文件头信息
dos.writeByte(72);
dos.writeByte(72);
dos.writeByte(70);
// 宽度和高度
dos.writeInt(array.length);
dos.writeInt(array[0].length);
// 写文件数据
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
int num = array[i][j];
dos.writeInt(num);
}
}
// 强制输出数据
dos.flush();
dos.close();
} catch (Exception ef) {
ef.printStackTrace();
}
下一个就会是文件的读取函数——注意文件的读取格式和上一个函数文件的保存格式高度一致。
/**
* 打开指定的文件
*
* @param path
* 文件的路径
* @return 将文件中的数据装在二维数组中返回
*/
public int[][] openFile(String path) {
try {
// 文件输入流
FileInputStream fis = new FileInputStream(path);
// 包装
DataInputStream dis = new DataInputStream(fis);
// 读文件头
byte b1 = dis.readByte();
byte b2 = dis.readByte();
byte b3 = dis.readByte();
System.out.println("文件头:" + b1 + b2 + b3);
// 读取宽度和高度
int width = dis.readInt();
int height = dis.readInt();
System.out.println("文件大小:" + width + height);
// 准备接收数据
//int[][] array = new int[height][width];
// 读数据
for (int i = 0; i < saveColor.length; i++) {
for (int j = 0; j < saveColor[i].length; j++) {
int num = dis.readInt();
saveColor[i][j] = num;
}
}
return saveColor;
} catch (Exception ef) {
ef.printStackTrace();
}
return null;
}
到这里,相信各位对文件格式的概念,大概有了新的理解吧^_^。
相关推荐
Flash多文件大文件上传自定义文件类型,可以跨域提交。 文件大小可以自定义,每次自定义最多上传文件个数等
c#中如何实现一个类的序列化,以及把自己的数据保存到自定义的文件类型当中
去除bom头小工具,单个可执行绿色文件,无需破解、注册;可按文件夹批量替换,支持自定义文件类型。替换前请先做好原始文件备份。
3、保存的自定义文件(.cfo格式)可以自动关联图标 4、双击.cfo文件可以自动启动自定义程序打开 主要采用方法: 1、把文件关联信息保存到系统注册表,按指定格式存储,文件即可自动和程序和图标关联! 2、采用...
易语言自定义数据类型变量保存源码,自定义数据类型变量保存,CLSave
软件名称:批量清除Delphi临时文件 ... 3.[自定义] 支持自定义文件类型查找文件 (含子目录) 如:*.txt 多种类型用分号分开 如 *.txt;*.exe 4.[临时文件] 支持自选择右侧临时文件类型 (含子目录,默认*.~*所有文件)
该例程在qt creator2.4.1下调试成功,用重载的方法实现了QDataStream读写用户自定义的数据类型,使操作更加方便。
易语言自定义数据类型与字节集转换源码,自定义数据类型与字节集转换,自定义写出内存,字节集文件到自定义,自定写出,写到自定,GlobalSize
注册表定位打开软件,直接打开注册表指定的节点,再也不用一级一级的打开了,直接双击打开,输入要打开的路径就好
介绍的是利用C#设置自定义文件图标,然后实现双击启动的功能,文章给出了示例代码,介绍的很详细,有需要的可以参考借鉴。
软件介绍: ...WAV文件 WMA文件 图片文件 JPG文件 BMP文件 GIF文件 PNG文件 ICO文件自定义文件类型:(请直接填写文件类型的后缀名即可,例如GIF)IE缓存文件提取器 V1.2(WindowsXP版)
简单介绍自定义文章类型创建流程简单介绍自定义文章类型创建流程简单介绍自定义文章类型创建流程
自定义组件文件类型对应图片
全新改版界面,新加入非常实用的目录统计和用户自定义文件类型统计的功能。 ☆2.8版:加入用户自定义文件统计类型的功能。 ☆2.7版:加入目录统计的功能,重新设计了程序显示界面。 ☆2.6版:修正对VB项目文件...
IntelliJ IDEA、PhpStorm、webStorm 公用编辑器样式设置文件
首先在安装程序 添加文本资源,建立ID和资源类型!生成EXE程序 打包程序将要安装的程序及资源使用压缩技术 加压 打包程序使用UpdateResource函数将压缩资源写到 安装程序内部 替换那个文本资源就可以了!最后生成...
易语言动态自定义类型源码,动态自定义类型,new,add_string,add_int,get_string,get_int,empty,echo_file,load_file,字节_取字节,字节_取整数,字节_取短整,字节_取文本,字节_取字节集
>支持自定义文件类型 >对不同的文件类型定义不同的TAB和缩进 比如,您可以定义当用户按TAB键时,在C/C++中输入TAB键,而在Java文件中输入四个空格 4、十六进制编辑模式 >在十六进制编辑模式中可以很...
解决以下问题 一、如何创建自定义后缀名的文件(如 *.tmp)? 二、如何关联文件类型和应用程序? 三、双击一个自定后缀的文件,打开应用程序后如可加载其中的内容呢?
漂亮简洁的文件和文件夹选择器,支持指定文件类型和自定义文件图标.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。