Java写入文件的几种方法分享

时间:2022-08-13 19:22:37

这篇文章主要介绍了Java的写入文件的几种方法,需要的朋友可以参考下

Java写入文件的几种方法分享

一,FileWritter写入文件

FileWritter,字符流写入字符到文件。默认情况下,它会使用新的内容取代所有现有的内容,然而,当指定一个真(布尔)值作为FileWritter构造函数的第二个参数,它会保留现有的内容,并追加新内容在文件的末尾。

替换所有现有的内容与新的内容。

新的FileWriter(文件); 2。保留现有的内容和附加在该文件的末尾的新内容。



代码如下:


新的FileWriter(file,true);


文件追加示例  
一个字幕:文件,命名为“javaio-appendfile.txt”,并包含以下内容。

ABC Hello追加新内容new FileWriter(file,true)



代码如下:


package com.yiibai.file; 

import java.io.File; 
import java.io.FileWriter; 
import java.io.BufferedWriter; 
import java.io.IOException; 

public class AppendToFileExample  

    public static void main(String [] args)
    {  
     try { 
      String data =“此内容将追加到文件的末尾”; 

      文件文件=新文件(“javaio-appendfile.txt”); 

      //如果文件不存在,则创建它
      if(!file.exists()){ 
       file.createNewFile(); 
      } 

      // true =追加文件
      FileWriter fileWritter = new FileWriter(file.getName(),true); 
             BufferedWriter bufferWritter = new BufferedWriter(fileWritter); 
             bufferWritter.write(数据); 
             bufferWritter.close(); 

         的System.out.println( “完成”); 

     } catch(IOException e){ 
      e.printStackTrace(); 
     } 
    } 
}


查询查询结果  
现在,文本文件“javaio-appendfile.txt”内容更新如下:

ABC Hello这个内容将追加到文件的末尾

Java写入文件的几种方法分享

二,BufferedWriter将写入文件

缓冲字符(BufferedWriter)是一个字符流类来处理字符数据。不同于字节流(数据转换成字节),你可以直接写字符串,数组或字符数据保存到文件。


代码如下:


package com.yiibai.iofile; 

import java.io.BufferedWriter; 
import java.io.File; 
import java.io.FileWriter; 
import java.io.IOException; 

public class WriteToFileExample { 
 public static void main(String [] args){ 
  try { 

   String content =“这是写入文件的内容”; 

   File file = new File(“/ users / mkyong / filename.txt”); 

   //如果文件不存在,则创建它
   if(!file.exists()){ 
    file.createNewFile(); 
   } 

   FileWriter的FW =新的FileWriter(file.getAbsoluteFile()); 
   BufferedWriter bw = new BufferedWriter(fw); 
   bw.write(内容); 
   bw.close(); 

   的System.out.println( “完成”); 

  } catch(IOException e){ 
   e.printStackTrace(); 
  } 
 } 
}

Java写入文件的几种方法分享

三,FileOutputStream中写入文件


文件输出流是一种用于处理原始二进制数据的字节流类。为了将数据写入到文件中,必须将数据转换为字节,并保存到文件。请参阅下面的完整的例子。



代码如下:


包com.yiibai.io; 

import java.io.File; 
import java.io.FileOutputStream; 
import java.io.IOException; 

public class WriteFileExample { 
 public static void main(String [] args){ 

  FileOutputStream fop = null; 
  档案档案 
  String content =“这是文本内容”; 

  尝试{ 

   file = new File(“c:/newfile.txt”); 
   fop = new FileOutputStream(file); 

   //如果文件不存在,则创建它
   if(!file.exists()){ 
    file.createNewFile(); 
   } 

   //以byte为单位获取内容
   byte [] contentInBytes = content.getBytes(); 

   fop.write(contentInBytes); 
   fop.flush(); 
   fop.close(); 

   的System.out.println( “完成”); 

  } catch(IOException e){ 
   e.printStackTrace(); 
  } finally { 
   try { 
    if(fop!= null){ 
     fop.close(); 
    } 
   } catch(IOException e){ 
    e.printStackTrace(); 
   } 
  } 
 } 
}


//更新的JDK7例如,使用新的“尝试资源关闭”的方法来轻松处理文件。

包com.yiibai.io; 

import java.io.File; 
import java.io.FileOutputStream; 
import java.io.IOException; 

public class WriteFileExample { 
 public static void main(String [] args){ 

  File file = new File(“c:/newfile.txt”); 
  String content =“这是文本内容”; 

  try(FileOutputStream fop = new FileOutputStream(file)){ 

   //如果文件不存在,则创建它
   if(!file.exists()){ 
    file.createNewFile(); 
   } 

   //以byte为单位获取内容
   byte [] contentInBytes = content.getBytes(); 

   fop.write(contentInBytes); 
   fop.flush(); 
   fop.close(); 

   的System.out.println( “完成”); 

  } catch(IOException e){ 
   e.printStackTrace(); 
  } 
 } 
}