0

我有这样的名字

"3":"BBB, AAA, Location","2":"BBB, AAA, Location,"1":"BBB, AAA, Location"

我想要这样的结果

1. BBB, AAA, Location
2. BBB, AAA, Location
3. BBB, AAA, Location

我试过这个

Name.setText(Name.replace("\"", "").replace(":", ". "));

我知道这/n将用于新线路。但是,我仍然有点困惑我怎么能做到这一点。

4

2 回答 2

1
String[] newText = Name.split("\",\""); //it returns an array of strings
for (int i=0; i<newText.length; i++)
    newText[i] = newText[i].replace("\"", "").replace(":", ". ");
Arrays.sort(newText);
String ultimateText = "";
for (String s : newText)
    ultimateText = ultimateText+s+"\n";
Name.setText(ultimateText);

这很棘手。导入数组。

于 2013-09-05T17:32:06.480 回答
0

正如@HunterMcMillen 所说,您应该使用 Json 库,Gson 是一个不错的选择,但可能有点高级,也许可以尝试http://json.org/java/有免费库可以使用 JSON 字符串。

使用任何 JSON 库,您要做的就是获取这 3 个选项的 JSON 对象或数组,将它们放在数组列表中并对其进行排序。然后将其添加到格式化的输出中。我将从更改存储您发布的字符串的方式开始,将其存储为 JSON 对象(无论是 Gson 还是 Json.org)。然后从那里去。

于 2013-09-05T17:29:55.507 回答