アプリでテキスト ファイルを読み込もうとしていますが、行単位ではなく単語単位で読み取る必要があります。私は Java と、 hasNext() メソッドを持つ Scanner クラスに慣れているので、現在それを使用しています。これが私のコードです:
try
{
FileInputStream fis = openFileInput(FILENAME);
Scanner infile = new Scanner(new InputStreamReader(fis));
while(infile.hasNext())
{
accName = infile.next();
uName = infile.next();
pWord = infile.next();
((ArrayHandler)getApplicationContext()).info.add(new Information(accName, uName, pWord));
for( int i = 0; i < ((ArrayHandler)getApplicationContext()).info.size(); i++)
{
}
}
}
catch(Exception err)
{
Toast.makeText(getBaseContext(), "Could Not Read File", Toast.LENGTH_LONG).show();
}
他に良い方法があれば教えてください。また、このファイルはアプリが実際に使用されるまで作成されないため、最初にエラーがスローされ、次に onDestroy() が発生してユーザーが情報をリロードした後に読み取られます。
編集 今まで応答のない返信を申し訳ありません。しかし、上記の方法は実際には 100% 機能しています。そのため、ファイルを単語ごとに読み取って割り当てたい場合 (上記のように)、このコードは問題なく機能します。