Avatar ·

如何将文件内容读取为Java字符串(File to String)

大家好!我是Java新手,一直搞不懂如何读取文件。我需要将整个文本文件读入一个String字符串,以便后续处理(例如,按行分割或查找子字符串)。 我尝试自己写代码,但代码很冗长且无法工作: ```java File file = new File("test.txt"); String content = ""; try { FileInputStream fis = new FileInputStream(file); int b; while ((b = fis.read()) != -1) { content += (char) b; } fis.close(); } catch (IOException e) { e.printStackTrace(); } System.out.println(content); ``` 问题: 1. 如果文件很大,程序会变慢(我听说在循环中拼接字符串不好)。 2. 未指定编码——在Windows上俄文字符会变成乱码。 3. 如果忘记关闭流,可能会导致内存泄漏。 4. 代码看起来糟糕——对于这么简单的任务来说行数太多了。 请告诉我如何在现代Java中正确且优雅地将文件读取为字符串。