0

Androidに文字列があります。

str = |test1:23|st1:4|st2:3|st3:5|test2:25|st1:5|st2:6|st3:7|test3:26|st1:5|st2:2|st3:8|test4:28|st1:8|st2:3|st3:2|test5:29|st1:1|st2:2|st3:2|......

I need to split that string and set each data to listview in android.

I mean for each listitem I should keep the data as

test1:23
st1:4
st2:3
st3:5
---------------------
test2:25
st1:5
st2:6
st3:7
----------------------

ここで、文字列を | で分割します。使用する記号:

 String splitstring = str.split("\\|");

splitstring[0]含むようになりました。しかし、最初の 4 つを最初の listitem に、次の 4 つを次の listitem に設定する必要があります。どうすればそのタスクを達成できるか教えてください。前もって感謝します。test1:23splitstring[1]sty:4

4

1 に答える 1

1

どうですか:

    String str = "test1:23|st1:4|st2:3|st3:5|test2:25|st1:5|st2:6|st3:7|test3:26|st1:5|st2:2|st3:8|test4:28|st1:8|st2:3|st3:2|test5:29|st1:1|st2:2|st3:2";
    String[] splitted = str.split("\\|");
    List<String> fourItems = new ArrayList<String>();
    int listItemPosition = 0;
    for (String s : splitted) {
        fourItems.add(s);
        if (fourItems.size()==4) {
            processItems(fourItems, listItemPosition++);
            fourItems.clear();
        }
    }

    private void processItems(List<String> fourItems, int position) {
        // do whatever you want to do with your four strings like
        // assigning it to your list item at position
    }

もちろん、これにはエラー処理などは一切ありません

于 2013-06-19T03:02:47.370 に答える