0

在我的 android 应用程序中,我需要绘制一个图表,显示最近 2 小时的数据以 30 秒的间隔更新。

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

有人可以建议我,存储数据的最佳方式。这样我就可以同时从中读取并同时绘制它。

4

1 回答 1

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[] 并将所有三组浮点数存储在一个数组列表中,但您可能希望能够独立访问每组数据,我不知道。

于 2012-08-17T12:12:29.117 回答