java中,對文件進行追加內容操做的三種方法html
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:java
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:dom
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:spa
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();
}
}
轉自http://www.cnblogs.com/wangcp-2014/p/5851986.html
本人在實際項目中採用的是method2(), 由於這種方法操做簡單,不須要判斷這個文件原來是否存在。
|