我使用开放式CSV将SQL转储导出为CSV。在其中一个专栏中,我有很多逗号。导出为CSV后,数据会在每个逗号上分割。我怎么能逃脱逗号?
con = DriverManager.getConnection(url, user, password);
pst = con.prepareStatement("SELECT * FROM Cars");
rs = pst.executeQuery();
writer = new CSVWriter(new FileWriter("cars.csv"),
DEFAULT_SEPARATOR, NO_QUOTE_CHARACTER);
writer.writeAll(rs, true);
实际数据:
LINESTRING (184317.646019852 55192.7039821837, 184361.902992529 55174.2199648116)
我得到了什么
COLUMN-1 COLUMN-2
LINESTRING (184317.646019852 55192.7039821837 184361.902992529 55174.2199648116)
答案 0 :(得分:1)
如果您真的想要生成与RFC 4180标准兼容的CSV:
realm.where(Class1.class).in("objects.field1",["COMPLETE", "INPROGESS"]).equalTo("objects.field2", "f3").findAll()
只需删除6. Fields containing line breaks (CRLF), double quotes, and !!!commas!!!
should be enclosed in double-quotes. For example:
"aaa","b CRLF
bb","ccc" CRLF
zzz,yyy,xxx
选项即可。
过度你应该找到另一个库,它可以生成与CSV不兼容的分隔格式(例如,如果你想使用NO_QUOTE_CHARACTER
来表示转义逗号而不是双引号)。