2011-12-14 6 views
0

私はデータベース列から配列リストを作成しました。角括弧を取り除き、各要素を新しい行に表示するか、間隔を空けて表示したいと思います。私は文字列ビルダーを使ってこれを試しています。このコードの問題は、すべての要素を一緒に文字列に追加することです。誰もこれで私を助けることができますか?ここでList BuilderからのString Builder、各要素の後に空白/改行を追加する方法は?

は私のコードです:

Cursor cursor2 = data.IngredientfetchRows(ID); 
startManagingCursor(cursor2); 
//cursor2.moveToFirst(); 

ArrayList<String> al = new ArrayList<String>(); 
cursor2.moveToFirst(); 
while(!cursor2.isAfterLast()) { 
    // Log.d("", "" + cursor.getString(cursor 
    //     .getColumnIndex(ProfileDbAdapter.KEY_PROFILE_NAME))); 
    String mIngredientName = cursor2.getString(1); 
    al.add(mIngredientName); 
    cursor2.moveToNext(); 
} 

StringBuilder builder = new StringBuilder(); 
for (String value : al) { 
    builder.append(value); 
} 
String text = builder.toString(); 

Speech.setText(text); 

data.close(); 
// + " " + cursor.getString(2) + "" + cursor.getString(3) 
initSpeak(); 
speakButtons(StartSpeech); 

答えて

1

ような何かを行うことができますリストの末尾:

StringBuilder builder = new StringBuilder(); 
for (String value : al) { 
    builder.append(value).append('\n'); 
} 
0

最も簡単な解決策:

final static String BREAK = ", "; //Defined somewhere practical. 

for (String value : al) { 
    builder.append(value); 
    builder.append(BREAK); 
} 
0

あなたがで改行を気にしない場合は、この

StringBuilder builder = new StringBuilder(); 
     for (String value : al) { 
      builder.append(value + " "); 
      } 
     String text = builder.toString(); 
関連する問題