1

txtファイルで数千の文を取得しました。最初のAndroidアプリケーションは、そこから1つを取得して、textViewに配置する必要があります。

txtファイルをリソースとして配置することも、すべての文を取得して配列に変換することもできます。txtをアプリケーションに入れたくはありませんが、直接配列に文を入れます。何千もの文を配列のようなリストに自動的に「翻訳」するにはどうすればよいですか?

4

4 に答える 4

1

車輪の再発明をしないでください...これはワンライナーです:

import org.apache.commons.io.IOUtils;

List<String> sentences = (List<String>)IOUtils.readLines(new FileInputStream("filename.txt"));
于 2012-05-25T01:38:38.600 に答える
0

各アイテムにピリオドが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."]
于 2012-05-25T01:11:26.217 に答える
0

テキストファイルをリソースフォルダに入れて、BufferedReaderを使用して読みたいようです。

テキストファイルの内容に応じて、テキストを1行ずつ読み取り、配列に追加することも、ファイル全体を文字列として読み取って.split()を使用することもできます。これにより、配列が返されます。あなたが使用するための文字列の。

于 2012-05-25T01:17:21.313 に答える
0
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
于 2012-05-25T04:46:20.470 に答える