前言
今天因为项目中遇到一个问题,需要从Linux系统中读一个文件的内容,这个是到时候项目要部署到Linux上然后读取的,所以相当于是访问本地机器读取,所以比较简单。
正文
这里用windows简单测试,博主在E:/下面新建一个测试文本test.txt,里面内容如下:
java代码如下:
public static String getFileContentByPath (String path, String fileName) {
String content = null;
File file = new File(path + 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");
}
content = buffer.toString();
}
catch(IOException e){
System.err.println("File ["+ path + fileName +"] Error!");
e.printStackTrace();
}
} else {
System.out.println("File ["+ path + fileName +"] is not a file!");
}
} else {
System.out.println("File ["+ path + fileName +"] does not exist!");
}
return content;
}
public static void main(String[] args) {
System.out.println("读取的内容:" + getFileContentByPath("e:/","test.txt"));
}
运行输出结果: 读取的内容:测试内容!/n
这里我们用BufferedReader去读这个文件,然后循环执行input.readLine() 一行一行将每行的内容读出来,最终拼接成的buffer就是我们文件中的全部内容了。