关于java下的明确编码方式的文件读写操作总结

在java下主要通过file类来对文件进行操作!

一、创建文件

//创建一个文件对象,如:

File f1=new File("E:\\test.txt");

 

二、文件操作

        说实话,在java下读写文件的诸如PrintWriter、FileWriter、FileInputStream之类的IO流非常之多,初看之下确实会让人晕死!!!!!但是,根据自己的需要,选择合适的就可以了,没有必要全部掌握。

         其实在java下,常用的文件IO流也就FileWriter/FileReader和FileOutputWriter/FileInputReader这两组。其中,FileWriter/FileReader是FileOutputWriter/FileInputReader的子类,二者的主要区别在于FileWriter/FileReader采用系统默认的编码方式进行读写,不可以自己设置;而FileOutputWriter/FileInputReader可以在构造函数中设置读写的编码方式,所以为了保险防止出现乱码,一般用FileOutputWriter/FileInputReader进行文件的读写。

             FileOutputWriter/FileInputReader是java中非常关键的文件IO流,它是字节流-字符流的转换桥梁。可以用下面这张图说明一下:

          

 

1.写文件示例:

   File out = new File(file);

   //构造 OutputStreamWriter 实例,并设置写入文件的编码方式
   OutputStreamWriter ow = new OutputStreamWriter(new FileOutputStream(out), Charset.forName("GBK")); 
   BufferedWriter bw = new BufferedWriter(ow); //引入BufferedWriter进行封装是为了提高写文件的效率

   bw.write();   //写入内容

   bw.newLine(); //另起一行写

   bw.flush();   //刷新

   bw.close();  //关闭流

   值得注意的是,在new FileOutputStream(out)中,默认是覆盖原内容地写。如果要追加地写文件,还需要设置一个参数:

   new FileOutputStream(out,ture) //追加写到文件中 

2.读文件示例:

   File out = new File(file);

   //构造 InputStreamReader 实例,并设置写入文件的编码方式
   InputStreamReader ir = new InputStreamReader(new FileInputStream(out), Charset.forName("GBK")); 
   BufferedReader br = new BufferedReader(ir); //引入BufferedReader进行封装是为了提高写文件的效率

   String lineTxt = null; 
   while((lineTxt = bufferedReader.readLine()) != null)
  { 
     /*

    处理

    */

  } 
  br.close(); //关闭读文件流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值