繁体   English   中英

被添加到列表中的字符<String>

[英]Characters Being Added To List<String>

我有一个名为dbData的列表和两个名为infoSB和historySB的StringBuilder。 我已经调试了项目,并且两个StringBuilder拥有了它们应该具有的所有数据,但是由于某种原因,它还向数据中添加了一些随机字符。 我添加数据所要做的就是下面的代码:

dbData.add(infoSB.toString());
dbData.add(historySB.toString());

要添加的字符是[]和,

有没有人遇到过这个问题,并且知道如何避免这样做?

更新:这是我获取数据并将其分配给StringBuilder的方式。

JSONObject json_data = jArray.getJSONObject(i);
double altitudeData = json_data.getDouble("altitude");
double altitudeInFeet = altitudeData * 3.281;
historySB.append("Altitude: " + df.format(altitudeInFeet) + "ft\n");

这些字符位于字符串的开头和结尾吗,中间是逗号吗? 这就是ListtoString方法要做的。

如果您有三个要素的清单

  1. “汽车”
  2. “范”
  3. “自行车”

然后,列表将创建以下字符串[car, van, bike] []表示列表的开头和结尾,逗号表示元素之间的边界。

如果只想连接字符串,请使用+运算符或StringBuilder / StringBuffer

例如。

String data = infoSB + historySB;

-首先检查您的data source ,它们是否带有您收到的某种奇数字符。

-我希望那些什么StringBuilder持有不是JSON ,我怀疑它,因为你得到[],在你StringBuilders,所以如果它你需要先分析它们,然后需要检索所需的特定数据....

-您可以使用trim()方法避免任何悬空的空格

例如:

dbData.add(infoSB.toString().trim());
dbData.add(historySB.toString().trim());

////////////////// Edited Part //////////////////////

DecimalFormat df = new DecimalFormat("##.###");
String altitudeData = json_data.getString("altitude");
double altitudeInFeet = Double.parseDouble(altitudeData) * 3.281;
historySB.append("Altitude: " + df.format(altitudeInFeet) + "ft\n");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM