2012-08-17 80 views
0

在我的android应用程序中,我需要绘制一个图表,显示在30秒间隔内更新的最后2小时数据。用于绘制图形的Android数据存储

另外我想更新文件上的数据。在任何时候,数据文件应该只包含最近2小时的数据。对于它来说最好的方法是什么,因为在两个小时后,每秒钟必须从文件顶部删除数据元素,并将新数据添加到文件底部,并且文件数据应从第一行开始。

有人可以建议我,最好的方式来存储数据。这样我就可以同时读取它并同时进行绘图。

+1

我们在谈论什么样的数据/多少数据?即每个条目存储了多少数据? – 2012-08-17 11:56:52

+0

3浮点值。 – 2012-08-17 12:06:56

+0

有没有机会加速计数据? – 2012-08-17 12:07:29

回答

1

由于您在任何时候只需要120 * 2 = 240个条目,每个条目只有12个字节(3个浮点数)。我只是使用数组列表。

ArrayList<Float> dataX = ArrayList<Float>();//for one of the three floats 

然后添加新条目

if(dataX.getSize() < 240){ 
    dataX.add(value); 
}else{ 
    dataX.remove(0);//remove oldest 
    dataX.add(value); 
} 

上面可能需要一些调整,认为这是伪代码。

您可以将列表类型更改为Float []并将所有三组浮点数存储在一个数组列表中,但您可能希望能够独立访问每组数据,但我不知道。