txtファイルで数千の文を取得しました。最初のAndroidアプリケーションは、そこから1つを取得して、textViewに配置する必要があります。
txtファイルをリソースとして配置することも、すべての文を取得して配列に変換することもできます。txtをアプリケーションに入れたくはありませんが、直接配列に文を入れます。何千もの文を配列のようなリストに自動的に「翻訳」するにはどうすればよいですか?
車輪の再発明をしないでください...これはワンライナーです:
import org.apache.commons.io.IOUtils;
List<String> sentences = (List<String>)IOUtils.readLines(new FileInputStream("filename.txt"));
各アイテムにピリオドが1つしかないことがわかっている場合は、それを分割します。それができないが改行を使用できる場合は、それを使用してください。
final String blob = "Quote 1. Quote2. Quote '3'.";
String[] quotes = blob.split('\\.');
> ["Quote 1", "Quote2", "Quote '3'"];
OR
final String blob = "Quote 1.\nQuote 2 longer.";
String[] quotes = blob.split("\n");
> ["Quote 1.", "Quote 2 longer."]
テキストファイルをリソースフォルダに入れて、BufferedReaderを使用して読みたいようです。
テキストファイルの内容に応じて、テキストを1行ずつ読み取り、配列に追加することも、ファイル全体を文字列として読み取って.split()を使用することもできます。これにより、配列が返されます。あなたが使用するための文字列の。
i guess this is what u dont want to do...
//InputStream is = getResources().openRawResource(R.raw.list);
したがって、InputStreamオブジェクトを取得し、次のコードを使用します
List<String> content=new ArrayList<String>();
InputStreamReader isr = new InputStreamReader(is);
linereader = new LineNumberReader(isr);
for (int i = 0; i < num; i++) { // num is total no of lines in file
try {
line = linereader.readLine();
content.add(line);
}
catch (IOException e)
{
e.printStackTrace();
}
}// for ends