-
字符编码
- ISO-8859-1:收录了除ASCII外,还包括西欧、希腊语、泰语、阿拉伯语、希伯来语对应的文字符号
- UTF-8:针对Unicode码表的可变长度字符编码
- GB2312:简体中文
- GBK:简体中文、扩充
- BIG5:台湾,繁体中文
-
字符流的父类(抽象类):
- Reader:字符输入流
- public int read(){}
- public int read(char[] c){}
- public int read(char[] b, int off, int len){}
- Writer:字符输出流
- public void write(int n){}
- public void write(String str){}
- public void write(char[] c){}
- Reader:字符输入流
-
文件字符流
-
FileReader:文件字符输入流
- public int read(char[] c) //从流中读取多个字符,将读到内容存入c数组,返回实际读到的字符数;如果达到文件的尾部,则返回-1
//创建FileReader文件字符输入流 FileReader fr = new FileReader("D:\\hello.txt"); //抛出异常 //读取 //单个字符读取 int data = 0; while((data = fr.read()) != -1){ System.out.println((char) data); } //多个字符读取 char[] buf = new char[1024]; int count = 0; while((count = fr.read(buf)) != -1){ System.out.println(new String(buf,0,count)); } //关闭 fr.close();
-
FileWriter:文件字符输出流
- public void write(String str) //一次写多个字符,将b数组中所有字符,写入输出流
//创建FileWriter文件字符输出流 FileWriter fw = new FileWriter("D:\\write.txt"); //抛出异常 //写入 for(int i = 0; i < 10; i++){ fw.write("你好,世界!\r\n"); // \r\n换行 fw.flush(); } //关闭 fw.close();
-
复制文件(只能复制文本文件,不能复制图片或者二进制文件)
//创建FileReader、FileWriter FileReader fr = new FileReader("D:\\writer.txt"); //抛出异常 FileWriter fw = new FileWriter("D:\\writer2.txt"); //读写 int data = 0; while((data = fr.read()) != -1){ fw.write(data); fw.flush(); } //关闭 fw.close(); fr.close();
-
-
字符缓存流
- 缓冲流:BufferReader/BufferWriter
- 高效读写
- 支持输入换行符
- 可一次写一行、读一行
例1:BufferReader的使用
//创建BufferReader缓冲流 FileReader fr = new FileReader("D:\\writer.txt"); //抛出异常 BufferReader br = new BufferReader(fr); //读取 //一次读多个字符 char[] buf = new char[1024]; int count = 0; while((count = br.read(buf)) != -1){ System.out.println(new String(buf,0,count)); } //一次读一行 String line = null; while((line = br.readLine()) != null){ System.out.println(line); } //关闭 br.close();
例2:BufferWriter的使用
//创建BufferWriter缓冲流 FileWriter fw = new FileWriter("D:\\abc.txt"); //抛出异常 BufferWriter bw = new BufferWriter(fw); //写入 for(int i = 0; i < 10; i++){ bw.write("好好学习"); bw.newLine(); //写入一个换行符(windows:\r\n linux:\n) bw.flush(); } //关闭 bw.close();
- 缓冲流:BufferReader/BufferWriter
字符流
最新推荐文章于 2024-10-01 18:51:18 发布