2022年java文件读写 .pdf
《2022年java文件读写 .pdf》由会员分享,可在线阅读,更多相关《2022年java文件读写 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、java 读写文件大全 2009-04-10 10:01使用 Java 操作文本文件的方法详解摘要: 最初 java 是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader 和 Writer 两个类最初 java 是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和 Writer两个类,这两个类都是抽象类,Writer 中 write(char ch,int off,intlength),flush()和 close() 方法为抽象方法, Reader 中 read(char ch,int off,int length)和 close()方法是抽象方法。子类应该分别实现
2、他们。当我们读写文本文件的时候,采用Reader 是非常方便的,比如FileReader ,InputStreamReader 和 BufferedReader 。 其中最重要的类是InputStreamReader ,它是字节转换为字符的桥梁。 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK 等。当使用 FileReader 读取文件的时候。 FileReader fr = new FileReader(ming.txt); int ch = 0; while(ch = fr.read()!=-1 ) System.out.print(char)c
3、h); 其中 read() 方法返回的是读取得下个字符。当然你也可以使用read(char ch,int off,int length) 这和处理二进制文件的时候类似,不多说了。如果使用InputStreamReader 来读取文件的时候while(ch = isr.read()!=-1) System.out.print(char)ch); 这和 FileReader 并没有什么区别,事实上在FileReader 中的方法都是从InputStreamReader 中继承过来的。 read() 方法是比较好费时间的,如果为了提高效率我们可以使用BufferedReader 对 Reader 进
4、行包装,这样可以提高读取得速度,我们可以一行一行的读取文本, 使用 readLine() 方法。BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(ming.txt); String data = null; while(data = br.readLine()!=null) System.out.println(data); 当你明白了如何用 Reader来读取文本文件的时候那么用Writer 写文件同样非常简单。有一点需要注意,当你写文件的时候,为了提高效率,写入的数据会先放入缓冲
5、区,然后写入文件。因此有时候你需要主动调用flush()方法。与上面对应的写文件的方法为:FileWriter fw = new FileWriter(hello.txt); String s = hello world; fw.write(s,0,s.length(); fw.flush();OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(hello2.txt); osw.write(s,0,s.length(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
6、 - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - osw.flush();PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(hello3.txt),true); pw.println(s); 不要忘记用完后关闭流!下面是个小例子,帮助新手理解。其实有的时候java的 IO 系统是需要我们多记记的,不然哪天就生疏了。import java.io.*;public class TestFile2 public stat
7、ic void main(String args) throws IOException FileReader fr = new FileReader(ming.txt); char buffer = new char1024; int ch = 0; while(ch = fr.read()!=-1 ) System.out.print(char)ch); InputStreamReader isr = new InputStreamReader(new FileInputStream(ming.txt); while(ch = isr.read()!=-1) System.out.prin
8、t(char)ch); BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(ming.txt); String data = null; while(data = br.readLine()!=null) System.out.println(data); FileWriter fw = new FileWriter(hello.txt); String s = hello world; fw.write(s,0,s.length(); fw.flush(); OutputStream
9、Writer osw = new OutputStreamWriter(new FileOutputStream(hello2.txt); osw.write(s,0,s.length(); osw.flush(); PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(hello3.txt),true); pw.println(s); fr.close(); isr.close(); br.close(); fw.close(); osw.close(); pw.close(); 名师资料总结
10、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - java 中多种方式读文件一、多种方式读文件内容。1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.IOExc
11、eption; import java.io.InputStream; import java.io.InputStreamReader; import java.io.RandomAccessFile; import java.io.Reader; public class ReadFromFile /* * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。* param fileName 文件的名*/ public static void readFileByBytes(String fileName) File file = new File(fileName); I
12、nputStream in = null; try System.out.println(以字节为单位读取文件内容,一次读一个字节:); / 一次读一个字节in = new FileInputStream(file); int tempbyte; while(tempbyte=in.read() != -1) System.out.write(tempbyte); in.close(); catch (IOException e) e.printStackTrace(); return; try System.out.println(以字节为单位读取文件内容,一次读多个字节:); / 一次读多
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年java文件读写 2022 java 文件 读写
限制150内