求教数据库导出 Excel 文件中空白字符的处理

2020-04-26 16:21:31 +08:00
 philipjf
合作方从数据库中导出的 Excel 文件中存在大量显示空白但是不为空的数据。求教大佬们该如何处理。

例如:
“12345678 ”或
“ ”

原数据中不含引号,这里是为了方便表示。
推测是原数据库在导出数据的时候对没有占满最大长度的数据会自动用特殊字符填满到最大长度。
尝试用 Excel 的 trim 或者替换功能无法解决,空白的字符也无法被识别为空格。
数据量比较大,每个文件近一百列,一百万行的数据,也没有办法手工处理。

不得不去除掉这些特殊字符是在因为很多本身是数值类型的数据在混入了这种字符后无法按照数值类型处理。
1213 次点击
所在节点    数据库
7 条回复
koast
2020-04-26 16:23:30 +08:00
那那些空白不能复制出来吗,如果可以的话替换成空就可以解决吧。
gz911122
2020-04-26 16:29:28 +08:00
导入数据库把空白字符全干掉
再重新导出来...


话说这种几百万的用 csv 不香吗?
非用 excel....
philipjf
2020-04-26 16:39:18 +08:00
@koast 试过直接复制空白字符替换,也无法用 Excel 的替换或者 trim 干掉
philipjf
2020-04-26 16:45:53 +08:00
@gz911122 合作方直接给的就是 Excel 文件,我没有直接对接那边的人是我老板给我的文件也不好抱怨啥。
目前的状况是不去掉这些空白字符,很多数值类型和布尔类型的字段也必须要以文本类型导入到数据库。
强行先导入数据库也试过,直接超了 mysql 的单行限制。。。
gz911122
2020-04-26 16:46:53 +08:00
@philipjf
不行用 easyexcel 之类的读取再输出,处理一遍好了
renmu
2020-04-26 16:49:19 +08:00
空白字符我怀疑是 Unicode 字符,Excel 默认的是 gbk 编码,所以会显示成空白。
philipjf
2020-04-26 16:54:33 +08:00
@gz911122 实在不行只能这么办了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/666313

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX