在 Java 中将整个文本文件转换为字符串

2022-08-31 16:50:23

Java是否有一行指令可以读取文本文件,就像C#一样?

我的意思是,在Java中是否有与此等效的东西?

String data = System.IO.File.ReadAllText("path to file");

如果没有...什么是“最佳方法”来做到这一点...?

编辑:
我更喜欢Java标准库中的一种方式...我不能使用第三方库。


答案 1

apache commons-io 有:

String str = FileUtils.readFileToString(file, "utf-8");

但是在标准java类中没有这样的实用程序。如果您(出于某种原因)不需要外部库,则必须重新实现它。这里有一些例子,或者,你可以看到它是如何由commons-io或Guava实现的。


答案 2

不在主要的Java库中,但你可以使用Guava

String data = Files.asCharSource(new File("path.txt"), Charsets.UTF_8).read();

或者阅读行:

List<String> lines = Files.readLines( new File("path.txt"), Charsets.UTF_8 );

当然,我相信还有其他第三方库可以使它变得同样容易 - 我只是对番石榴最熟悉。