-2

私はCVSファイルを持っています。Androidアプリケーションでそれを読み取ってテキストビューに表示したい。これを行う方法の例を教えてください。

4

2 に答える 2

0

スキャナーを使用できます。

Scanner scanner = new Scanner(new File("file.csv");
String s = "";
while(scanner.hasNextLine());
    s+=scanner.nextLine();
String[] values = s.split(",");

これは2nプロセスです。部分文字列を使ってサルをしたい場合は、おそらくnまで下げることができます。

これをテキストビューに追加します

for(int i = 0; i < values.length; i++){
    TextView t = new TextView(getApplicationContext());
    t.setText(values[i]);
    layout.addView(t);
}

setContentView(layout);を使用して、xmlまたはコード自体にレイアウトを追加できます。

レイアウトパラメータも使用できます

 YourLayoutType.layoutParams params = new YourLayoutType.layoutParams(LayoutParams.whatLayoutTypeYouWant, LayoutParams.whatLayoutTypeYouWant); //(it goes width, height).

次に、それらをレイアウトに使用します

layout.setLayoutParams(params);

注:このコードはすべて、アクティビティコードファイルに含まれている必要があります。

于 2012-12-04T17:49:48.597 に答える
0

ずっと前に、スキャナーが機能しなかったため、これらのメソッドを作成しました。

public ArrayList<String> readFileLines(File file)
{
    ArrayList<String> lines = new ArrayList<String>();
    String line;
    BufferedReader br = null;

    try
    {
        br = new BufferedReader(new FileReader(file));

        while ( (line = br.readLine()) != null)
        {
            lines.add(line);
        }
    }
    catch (Exception e )
    {
        System.out.println("Cannot open file to read: " + e);
    }
    finally
    {
        try
        {
            br.close();
        }
        catch (IOException ex)
        {
            System.out.println("Cannot close file after saving: " + ex);
        }
    }

    return lines;
}

使用法:

    for (String line: readFileLines(new File("file.csv")))
    {
        String[] values = line.split(";");
        // values[0] would be first value of line, values[1] would be second etc.
    } 
于 2012-12-04T19:11:45.100 に答える