本文实例讲述了Java读取文件的简单实现方法,非常实用。分享给大家供大家参考之用。具体方法如下:
这是一个简单的读取文件的代码,并试着读取一个log文件,再输出。
主要代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
import java.io.*;
public class FileToString {
public static String readFile(String fileName) {
String output = "" ;
File file = new File(fileName);
if (file.exists()){
if (file.isFile()){
try {
BufferedReader input = new BufferedReader ( new FileReader(file));
StringBuffer buffer = new StringBuffer();
String text;
while ((text = input.readLine()) != null )
buffer.append(text + "/n" );
output = buffer.toString();
}
catch (IOException ioException){
System.err.println( "File Error!" );
}
}
else if (file.isDirectory()){
String[] dir = file.list();
output += "Directory contents:/n" ;
for ( int i= 0 ; i<dir.length; i++){
output += dir[i] + "/n" ;
}
}
}
else {
System.err.println( "Does not exist!" );
}
return output;
}
public static void main (String args[]){
String str = readFile( "C:/1.txt" );
System.out.print(str);
}
}
|
输出结果如下:
奥运加油!
北京加油!
中国加油!
这里FileReader类打开一个文件,但是它并不知道如何读取一个文件,这就需要BufferedReader类提供读取文本行的功能。这就要联合这两个类的功能,来实现打开文件并读取文件的目的。这是一种包装流对象的技术,即将一个流的服务添加到另一个流中。
另外需要指出的是,Java在按照路径打开文件时,"/"和"/"都是认可的,只是在用到"/"时,要用另一个"/"转义一下。
希望本文所述对大家Java程序设计的学习有所帮助。