在本地存储中附加文件名以按顺序saveJSONObject

时间:2017-03-07 09:48:08

标签: java json processing

我使用API​​来调用Web上的数据,以便每隔一分钟获取一个JSON对象,并执行以下操作;

JSONObject raw = loadJSONObject(url); 
events = raw.getJSONArray("theThingiWant"); 

然后我使用saveJSONObject(raw, "data/scraped"+".json");来保存此对象。

我知道在处理过程中有saveframe()函数允许你按顺序将帧保存为你选择的数字格式,并希望saveJSONObject可以在其​​中使用它,但它没有&# 39;吨。

我想要做的是按顺序保存多个JSON对象,这样我的数据文件夹包含scrape001,scrape002等。是否有这样的功能,还是通过检索并附加上次保存的文件来完成?

2 个答案:

答案 0 :(得分:1)

除了millis()解决方案之外,您还可以跟踪int值,在生成文件名时使用它,并在保存文件时将其递增。

这样的事情:

int files = 0;

void draw(){
  saveJSONObject(whatever, "scraped" + files + ".json");
  files++;
}

您还可以使用frameCount变量:

void draw(){
  saveJSONObject(whatever, "scraped" + frameCount+ ".json");
  files++;
}

答案 1 :(得分:0)

所以我有一个可行的解决方案,我想做的事情如下;

我知道我每分钟调用API并获取一个新的JSON对象。我可以将此与millis()函数结合使用,如下所示

saveJSONObject(raw, "data/scraped00"+(millis()/60000)+".json");

这样做是保存JSONobject,然后使用millis()生成的unqiue数字将其除以60000转换为毫秒到分钟。这意味着该文件不会覆盖最后一次保存,而是以一分钟为增量生成一个新文件。