参考:https://www.cnblogs.com/wangcp-2014/p/5851986.html
java中,对文件进行追加内容操作的三种方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.RandomAccessFile; //如果文件存在,则追加内容;如果文件不存在,则创建文件,追加内容的三种方法 public class AppendContentToFile { @SuppressWarnings ( "static-access" ) public static void main(String[] args) { AppendContentToFile a = new AppendContentToFile(); a.method1(); a.method2( "E:\\dd.txt" , "222222222222222" ); a.method3( "E:\\dd.txt" , "33333333333" ); } |
方法1:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
public void method1() { FileWriter fw = null ; try { //如果文件存在,则追加内容;如果文件不存在,则创建文件 File f= new File( "E:\\dd.txt" ); fw = new FileWriter(f, true ); } catch (IOException e) { e.printStackTrace(); } PrintWriter pw = new PrintWriter(fw); pw.println( "追加内容" ); pw.flush(); try { fw.flush(); pw.close(); fw.close(); } catch (IOException e) { e.printStackTrace(); } } |
方法2:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
public static void method2(String file, String conent) { BufferedWriter out = null ; try { out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream(file, true ))); out.write(conent+ "\r\n" ); } catch (Exception e) { e.printStackTrace(); } finally { try { out.close(); } catch (IOException e) { e.printStackTrace(); } } } |
方法3:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
public static void method3(String fileName, String content) { try { // 打开一个随机访问文件流,按读写方式 RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw" ); // 文件长度,字节数 long fileLength = randomFile.length(); // 将写文件指针移到文件尾。 randomFile.seek(fileLength); randomFile.writeBytes(content+ "\r\n" ); randomFile.close(); } catch (IOException e) { e.printStackTrace(); } } } |