怎么样将文件内容转换为字符串?
下面的代码做了这件事情,要是其运行的话,可能需要修改文件路径。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| public static String readFileToString() throws IOException { File dirs = new File("."); String filePath = dirs.getCanonicalPath() + File.separator+"src"+File.separator+"TestRead.java"; StringBuilder fileData = new StringBuilder(1000); BufferedReader reader = new BufferedReader(new FileReader(filePath)); char[] buf = new char[1024]; int numRead = 0; while ((numRead = reader.read(buf)) != -1) { String readData = String.valueOf(buf, 0, numRead); fileData.append(readData); buf = new char[1024]; } reader.close(); String returnStr = fileData.toString(); System.out.println(returnStr); return returnStr; }
|
说是用String,好像也不是完全正确,准确的说,实际上是调用了java中的Stringbuffer .这里有一篇文章介绍了java String的不可变性,
Stringbuffer 和 Stringbuilder 都是可变的Strings.但是Stringbuffer在多线程环境中是线程安全的,文中使用Stringbuilder代替了Stringbuffer是因为在非多线程的环境下,StringBuilder更加快。