-
transient关键字修饰的元素序列化与反序列化需要自己写方法,加上writeInt序列化和readint反序列化查看全部
-
FileReader 和FileWriter适用于操作文件的,FileReader与FileWriter的用法与InputStreamReader和OutputStreamWriter类似,但是他们不能选择编码方式,因此对于与项目的编码方式不同的文本文件用FileWriter读取是会出现乱码的。同时,FileWriter(filename,true)是一种可在原文件上追加写操作的构造方式。查看全部
-
字符流 1)一切进入计算机的都会变成字节码 2)认识文本和文本文件 java中的文本(其实就是char)16位的无符号整数,是字符的unicode编码(这是一种双自己编码) 文件是byte byte byte...的数据集合,可以缩句来理解 文件输数据集合。字节流的编码方式和序列化规则不一样就形成了不同的文件:文本文件,音频文件,视频文件等 文本文件是文本(char的编码)序列按照某种编码方案(utf-8,utf-16be,gbk)序列化为byte的数据存储集合 (3)字符流 抽象类 Reader Writer 二者实现了数据的两种相互转换,存储时我们用字节码的形式存储,读入计算机内存处理(包括显示,运算等)是用字符(ABC...)的形式。 字符的处理,一次处理一个字符。其底层仍然是基本的字节序列 字符流的基本实现 InputStreamReader 完成byte流解析为char流,按照编码接卸 OutputStreamWriter 提供char流到byte流,按照编码处理。 为什么上面特别说明了一下文本文件,因为字符流大部分操作的都是文本文件。毕竟文本文编,以编码的方式不容易认读,我们才把字符编码解析为字符。如果Reader一个MP3之类的音频文件,根本就没有什么意义,因为,声音本来就不是用来看的,所以说字符流主要是用于处理文本文件的查看全部
-
JAVA的文本(char)是16位无符号整数,是字符的unicode编码(双字节编码);文件是byte byte byte...的数据序列;文本文件是文本(char)序列按某种编码顺序(UTF-8、UTF-16E、GBK)编码序列化为byte序列的存储结果 InputStreamReader是将一个文本的文件输入流通过它一个字符一个字符地读取,而OutputStreamWriter则是一个字符一个字符地输入到另一个文件中。new InputStreamReader(filename,编码方式),要注意的是用字符数组读取文件时格式为isr.read(char[],int start,int length)。new OutputStreamWriter(filename,编码方式),记得要刷新缓冲区(flush)查看全部
-
字节缓冲流相当于先将字节读取到缓冲区中,再由缓冲区写入到目标文件中,速度比单字节读取快,比批量读取慢。 注意:在每一次写入后缓冲区要刷新,不然写不到文件中去。查看全部
-
utf-8中, 中文占用3个字节, 英文占用2个字节 gbk中,中文占用2个字节, 英文占用1个字节 utf-16be中, 中文占用2个字节, 英文占用2个字节查看全部
-
RandomAccessFile查看全部
-
File类不能用于文件的范问查看全部
-
java是双字节编码,编码格式为utf-16be查看全部
-
字节流 InputStream OutputStream查看全部
-
java I/O 输入输出流查看全部
-
字符流过滤器查看全部
-
三种复制: 逐字节: int c; while((c = in.read()) != -1){ out.write(c); out.flush(); } in.close(); out.close(); 批量字节: byte[] buf = new byte[8*1024]; int b; while((b = in.read(buf,0,buf.length)) != -1){ out.write(buf,0,b); out.flush(); } in.close(); out.close(); 带缓冲区: BufferedInputStream bin = new BufferedInputStream(in); BufferedOutputStream bout = new BufferedOutputStream(out); int b; while((b = bin.read()) != -1){ bout.write(b); bout.flush(); } bin.close(); bout.close();查看全部
-
FileOutputStream是输出流的一个实现类,用法与FileInputSteam类似,也是分为单字节输出与字符数组输出。<br> FileOutputSteam out = new FileOutputStream(filename true/false)表示是否在原有的文件上进行添加,如果不加后面这个参数,即使存在这个文件,也先删除再创建一个新的。单字节输出每次输出一个字符的低八位。输出一个int类型字符需要移位输出四次查看全部
-
这个是要以程序为基准的,outputStream输出流(从程序输出到硬盘),从程序往硬盘写 inputStream 输入流(从硬盘输入到程序),从硬盘往程序读查看全部
举报
0/150
提交
取消