【发布时间】:2015-07-21 02:23:26
【问题描述】:
我有一个字符串需要拆分并添加到不同的数组中。
这是我的字符串
{"locations":[{"latitude":"1.3846519","longitude":"103.763276","startTime":"1422720220292","duration":"0","accuracy":"50.981998443604"} ,{"latitude":"1.3845814","longitude":"103.7634384","startTime":"1422720520181","duration":"0","accuracy":"55.532001495361"},{"latitude":"1.3844195 ","longitude":"103.763209","startTime":"1422720820265","duration":"0","accuracy":"34.5"},{"latitude":"1.3844051","longitude":"103.7632272 ","startTime":"1422721120466","duration":"0","accuracy":"36"}, ],"成功":1}
我想要的输出在不同的数组中是这样的。
latitudeArray[] = // String array of latitude values
longitudeArray[] = // String array of longitude values
startTimeArray[] = // String array of start time values
durationArray[] = // String array of duration values
accuracyArray[] = // String array of accuracy values
我正在使用处理 IDE 来分析我的数据,我尝试了 matchAll() 和 split() 函数,但无法正常工作。 你能帮我得到我的输出吗?谢谢。
编辑:我设法提取了一个纬度值,但我的方法似乎效率很低。如何在循环中执行此操作?
String[] locationData = loadStrings("sample.txt");
ArrayList<String> latitudeArray = new ArrayList<String>();
ArrayList<String> longitudeArray = new ArrayList<String>();
ArrayList<String> startTimeArray = new ArrayList<String>();
ArrayList<String> durationArray = new ArrayList<String>();
ArrayList<String> accuracyArray = new ArrayList<String>();
String temp;
int index;
index = locationData[0].indexOf("latitude");
println(index);
temp = locationData[0].substring(index+11);
println(temp);
index = temp.indexOf(",");
println(index);
latitudeArray.add(temp.substring(0,(index-1)));
println(latitudeArray.get(0));
【问题讨论】:
-
发布一些您尝试过的代码。
"but couldn't get it work"- 为什么不呢?你遇到了什么问题? -
使用 JSON 解析器而不是字符串操作。
-
@Vineet 请查看编辑,谢谢
-
@Codebender 我从来没有用过。你能详细说明一下吗?
-
@Hasala,谷歌JSON parsing in Java
标签: java arrays string arraylist