用程序获取csv数据时数据量变少的原因及解决办法

用程序获取csv数据时数据量变少的原因及解决办法

想必看到这篇博客的都是因为在用程序读csv文件时发现条目比Excel中获取的条目少吧,那么我们来探讨一下可能产生这种情况的原因。

1、打开csv文件时用到的编码方式有问题,错误的编码方式可能会产生意想不到的结果,比如会产生莫名其妙的换行或者会把之前的换行符给弄没了。最好的解决办法就是把csv文档用文档编辑器打开,保存为ANSI格式,程序打开文件时也采用ANSI格式,这样就能保证Excel和程序读出来的一样啦。

2、引号不匹配的问题,Excel是严格按照逗号进行分隔的,而程序可能会忽略掉包含在引号中的逗号,从而可能造成多行被连到一起的情况。这种情况要定位就很麻烦,最快捷的办法就是读出csv文件内容后直接替换掉所有的引号。比如python中的replace("\"","")

3、 某一个数据量过大溢出单元格造成自动换行,这就需要手动定位了,在Excel中看一下哪些行错位了,基本上都是这种情况,Excel的一个单元格最多存储的字符数是三万两千多个,如果超过了这个数目就会造成自动换行,也就是说会显得Excel中数据量比较多。这种情况其实不需要修改,因为你的程序读出来的数据量是对的。

4、程序中有错误捕获语句且出错之后pass或者未采取措施,这就很好理解了,比如你读一个数据,要把它转换成int型的,然后你为了保险起见写了个try except语句,如果你读出来的数据无法转成int型就会抛出异常,如果未采取行动当然就会显得数据量少啦。

希望能帮到您。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值