我正在尝试从src包加载文本文件。我不想将其作为输入流加载。我想将它作为FileReader加载。
看看netbeans如何加载图标,我尝试使用代码:
getClass().getResourcesAsStream("/getresources/test.txt");
但是,我找不到任何方法将输入流转换为文件阅读器。反正有没有这样做,以便我可以使用FileReader。我知道我可以将输入流分解成行,但这看起来很有效。
谢谢!
NT
答案 0 :(得分:3)
您可能希望使用BufferedReader。 它具有与Filereader相同的优点,可以逐行读取等,并接受一个接受InputStream的InputStreamReader。 这些IO类实际上是众所周知的Decorator模式的实现。 如果您阅读了该模式,您可能会更多地了解所有这些IO类。
FileReader需要一个文件。
答案 1 :(得分:2)
请注意,可能无法从文件系统访问类路径资源。另外,我假设任何不错的API都会接受Reader
而不是FileReader
。你可以这样做:
Reader reader = new InputStreamReader(inputStream);
答案 2 :(得分:1)
由于您有一个流资源(可能来自URL)而不是文件,我建议使用InputStreamReader。