【发布时间】:2012-02-15 12:54:36
【问题描述】:
我托管了一个文本文件,我想使用 java 将其加载到字符串中。
我的代码似乎没有产生错误,有什么帮助吗?
try {
dictionaryUrl = new URL("http://pluginstudios.co.uk/resources/studios/games/hangman/dictionary.dic");
} catch (MalformedURLException catchMalformedURLException) {
System.err.println("Error 3: Malformed URL exception.\n"
+ " Dictionary failed to load.");
}
// 'Dictionary' scanner setting to file
// 'src/Main/Dictionary.dic'
DictionaryS = new Scanner(new File(dictionaryUrl));
System.out.println("Default dictionary loaded.");
更新1:文件似乎没有加载到catch。但文件存在。
【问题讨论】:
-
您不应该使用
FileInputStream来读取文件吗?另外,您不能将File仅用于本地文件系统中的文件吗? -
我在读取本地文件时遇到问题,它在 NetBeans 中运行良好,但是在构建它之后,.jar 文件似乎无法读取存储在 .jar 文件中的本地文件。因此,我尝试使用 URL,但不确定如何使用 FileInputStream?
-
@KristianMatthews:你不能使用
File或FileInputStream从你的jar 中加载资源。请改用getClass().getResourceAsStream()。 -
@stryba 这是如何工作的?我的文件存储在 src/Main/dictionary.txt
-
我不知道您为什么要将 2.4 mb 的文本文件内容加载到字符串中。可能需要很长时间。您应该通过缓冲获取数据。