gpt4 book ai didi

java - MPAndroid 日期格式化和解析失去精度

转载 作者:行者123 更新时间:2023-12-02 01:39:21 26 4
gpt4 key购买 nike

我正在使用 MPAndroid 库作为我的 Android 应用程序的图表。我在条目中输入了一个很长的值。我的问题是,当我格式化 x 轴的值时,它使用浮点值而不是长整型值,因此会丢失精度。

这是我的图表条目代码:

String dateString = "02/13/2019(11:23:45)";
long readingDate = 0;
try {
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy(kk:mm:ss)", Locale.US);
Date date = sdf.parse(dateString);
readingDate = date.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
SensorData.add(new Entry(readingDate, 1.5);

这是我用于格式化 x 轴的代码:

private class XAxisValueFormatter implements IAxisValueFormatter {

@Override
public String getFormattedValue(float value, AxisBase axis) {
String dateString = new SimpleDateFormat("MM/dd/yyyy(kk:mm:ss)", Locale.US).format(value);
return dateString;
}
}

如何解决这个问题?

最佳答案

一个可能的解决方案是让你的第一个点保持 0 值。

基本上,您需要从 Entry 的每个新 x 值中减去 start_timestamp,以便图表将从 0 值开始,而不是从时间戳开始。

例如

假设 start_timestamp 变量保存您的数据点的第一个时间戳。

要添加新条目,请使用:

SensorData.add(new Entry(readingDate - start_timestamp, 1.5);

要格式化 x 值,只需将 start_timestamp 添加到提供的 x 值即可。

关于java - MPAndroid 日期格式化和解析失去精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54665464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com