File sample = new File("words.txt");
Scanner readWords = new Scanner(words);
while(scanner.hasNextLine())
{
//assume that arrayListOfWords is a previously declared arrayList
arrayListOfWords.add(readWords.nextLine());
}
上面的代码是否会正确地将.txt文件中的所有单词加载到一个arraylist中,假设每个单词都在一个单独的行上,没有空行?
我正在开发一个Android应用程序,所以在我的项目文件夹中我应该放置实际文件?
我什么时候可以只使用“words.txt”,何时需要输入完整路径名,例如C:\ Users \ etc ...
此外,一旦程序编译并转换为.apk文件,如果文件位于我的计算机上,如何从.txt文件中加载单词?如果其他人使用该应用程序,该应用程序是否无法找到“words.txt”?
我希望将单词加载到数组中而不需要使用1000“.add()”语句的大量代码。
我正在使用Android提供的ADT套件附带的eclipse版本
答案 0 :(得分:1)
如果您只需要保留单词列表,则可以将其存储在应用程序res下的数组中。 此解决方案假设您只需要保留单词列表。
创建一个xml文件array.xml,
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="words">
<item>word1</item>
<item>word2</item>
<item>word3</item>
</string-array>
</resources>
将此文件保存在res / values / array.xml
中将单词放入活动类中的arrayList中。
String[] arrayOfWords= getResources().getStringArray(R.array.words);
List<String> arrayListOfWords= Arrays.asList(arrayOfWords);
希望这符合您的需求。 但是如果你需要将这些单词保存为txt文件。你可以将它放在assets文件夹中并从你的活动中读取它。
答案 1 :(得分:0)
将您的文件放入Assets文件夹&amp;然后从您的代码中,您可以使用AssetsManager检索或读取您的文件。
答案 2 :(得分:-1)
您需要将文件放在项目的assets文件夹中。有一个演示,你可以检查出来。 http://sunil-android.blogspot.in/2013/05/read-file-from-assets.html