1

我正在尝试从 src 包中加载一个文本文件。我不想将它作为输入流加载。我想将其加载为 FileReader。

查看 netbeans 如何加载图标,我尝试使用代码:

getClass().getResourcesAsStream("/getresources/test.txt");

但是,我找不到将输入流转换为文件读取器的任何方法。有没有这样做,以便我可以使用 FileReader。我知道我可以自己将输入流分成几行,但这似乎需要做很多工作。

谢谢!

nt

4

3 回答 3

3

您可能想改用 BufferedReader。它具有 Filereader 的相同优点,可以逐行读取等,并接受 InputStreamReader 接受 InputStream。这些 IO 类实际上是众所周知的装饰器模式的实现。如果您阅读了该模式,您可能会更了解所有这些 IO 类。

FileReader 需要一个文件。

于 2010-09-02T07:58:42.597 回答
2

请注意,可能无法从文件系统访问类路径资源。另外,我认为任何体面的 API 都会接受 aReader而不是FileReader. 你可以做:

Reader reader = new InputStreamReader(inputStream);
于 2010-09-02T07:54:37.463 回答
1

由于您有一个流式资源(可能来自 URL)而不是文件,我建议使用 InputStreamReader。

于 2010-09-02T07:55:20.257 回答