Java 如何将不同排序的数据保存在.json文件中,存储在何处,如何检索?
我是android新手,开发并创建了一个“eventlogger”应用程序,在该应用程序中,您可以在此活动中选择无限多的事件: 所有事件都添加到名为“事件””的ArrayList中,如下所示:Java 如何将不同排序的数据保存在.json文件中,存储在何处,如何检索?,java,android,json,arraylist,Java,Android,Json,Arraylist,我是android新手,开发并创建了一个“eventlogger”应用程序,在该应用程序中,您可以在此活动中选择无限多的事件: 所有事件都添加到名为“事件””的ArrayList中,如下所示: [Event 1, Event 2, Event 3] 在下一个活动中,您可以启动计时器,按下按钮并将时间作为字符串记录到Arraylist的Arraylist中 ArrayList中的ArrayList被命名为“AllEventList” ArrayList<ArrayList<Str
[Event 1, Event 2, Event 3]
在下一个活动中,您可以启动计时器,按下按钮并将时间作为字符串记录到Arraylist的Arraylist中
ArrayList中的ArrayList被命名为“AllEventList”
ArrayList<ArrayList<String>> allActionsList;
最后,我想将其保存在一个.json文件中,该文件如下所示
[[00:00:01, 00:00:09, 00:00:12], [00:00:04, 00:00:07, 00:00:14], [00:00:03, 00:00:06, 00:00:15]]
{
"events":{
"Event 1":["00:00:01", "00:00:09", "00:00:12"],
"Event 2":["00:00:04", "00:00:07", "00:00:14"],
"Event 3":["00:00:03", "00:00:06", "00:00:15"]
}
如何在.json文件中写入数据,以及以后如何检索数据,以及应将数据存储在何处?这里有一种方法:
private String convertToJsonString(ArrayList<ArrayList<String>> allActionsList)
{
JSONObject jObj = new JSONObject();
JSONObject events = new JSONObject();
JSONArray eventX;
int count = 1;
String key;
try {
for(ArrayList<String> array : allActionsList){
key = String.format("Event %d", count);
eventX = new JSONArray();
for(String s : array){
eventX.put(s);
}
events.put(key, eventX);
count++;
}
jObj.put("events", events);
} catch(Exception e){
// failed somewhere to create JSON object
e.printStackTrace();
}
return jObj.toString();
}
private String convertToJsonString(ArrayList allActionsList)
{
JSONObject jObj=新的JSONObject();
JSONObject事件=新的JSONObject();
JSONArray事件;
整数计数=1;
字符串键;
试一试{
for(ArrayList数组:allActionsList){
key=String.format(“事件%d”,计数);
eventX=新的JSONArray();
for(字符串s:数组){
eventX.put(s);
}
events.put(key,eventX);
计数++;
}
jObj.put(“事件”,事件);
}捕获(例外e){
//无法创建JSON对象
e、 printStackTrace();
}
返回jObj.toString();
}
转换为字符串后,您可以将其保存到文件中
然后,您可以将其作为字符串从文件中读回,并按如下方式构建JSON对象:
JSONObject events = new JSONObject(<string read from file>);
JSONObject事件=新的JSONObject();
希望这对您有用。SQLite可能比json文件更适合您的应用程序需要。使用SQLite时,不必担心“.我应该在哪里存储它”@Barns这可能是真的,但我需要我的应用程序创建一个JSON文件,以便在Androids Java之外进一步使用。