参考: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();
}
}
}
|