gpt4 book ai didi

java - 如何在 Android Studio 中从 CSV 文件导入时从 SQLite DB 中删除特殊字符?

转载 作者:行者123 更新时间:2023-12-02 02:36:48 25 4
gpt4 key购买 nike

我有一个名为条形码的 CSV 文件,我已成功将该文件导入到我的 SQLite 数据库中,但问题是数据按 CSV 文件中的内容保存。
我得到的数据:8.90103E+12,我想要的数据:8901030382253。

示例:
商品 - EAN_CODE
100047253 - 8.90103E+12
100047252 - 8.90103E+12

我有两列,Ean_code 中的数据未正确进入我的数据库。我已经使用了修剪功能,但 o/p 保持不变。

我的代码:

if (exportDir.exists()) {
FileReader file = null;
try {
file = new FileReader(exportDir);

BufferedReader buffer = new BufferedReader(file);
String line = "";
int iteration = 0;
ArrayList<MasterDataModel2> arrayList_stock2 = new ArrayList<>();

while ((line = buffer.readLine()) != null) {
if (iteration == 0) {
iteration++;
continue;
}
//StringBuilder sb = new StringBuilder();
String[] str = line.split(",");

arrayList_stock2.add(new MasterDataModel2(str[0].replace("\"", ""), str[1].replace("\"", "")));
//arrayList_stock2.add(new MasterDataModel2(str[0],str[1]));

Log.d("insertTotal", "Msg:" + lastId);
}
Log.e("size",String.valueOf(arrayList_stock2.size()));
db.addAllMasterData2(arrayList_stock2);

} catch (FileNotFoundException e) {
e.printStackTrace();
//CallingImportantMethod.showToast(this, "File is not available");
} catch (IOException e) {
e.printStackTrace();
//CallingImportantMethod.showToast(this, "Something wents wrong");
}
}

最佳答案

下面的代码不正确。

arrayList_stock2.add(new MasterDataModel2(str[0].replace("\"", ""), str[1].replace("\"", "")));

\ 是特殊转义字符,因此需要 \\ 对其进行转义。即使与原始问题无关,建议您阅读 this清楚地了解 java 中反斜杠的用法。

回到问题,我猜你真的不需要调用str[].replace()。如果我错了请纠正我。

arrayList_stock2.add(new MasterDataModel2(str[0].trim(), str[1].trim()));

我认为上面的代码段就足够了。

编辑:对于您的实际问题,您可以使用下面的内容。为了避免 null 问题,您可能还需要进行检查。

if(str[1] != null) {
Double eanCodeDouble = Double.parseDouble(str[1]);
NumberFormat nf = NumberFormat.getInstance();
String eanCodeString = nf.format(eanCodeDouble);
System.out.println(resultedString);
} else {
String eanCodeString = '';
}

if(str[0] == null) {
str[0] = '';
}
arrayList_stock2.add(new MasterDataModel2(str[0].trim(), eanCodeString));

关于java - 如何在 Android Studio 中从 CSV 文件导入时从 SQLite DB 中删除特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57199431/

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