microsoft微软excel或WPS表格打开vivado逻辑分析仪ILA保存的csv文件,自动转换科学计数法损失精度的bug

问题

vivado的逻辑分析仪ILA,可以方便的把数据导出成CSV(Comma-Separated Values)文件,实际是逗号作为分隔符的数据文件。

导出数据文件用文本编辑器打开,第74行有如下数据:

但是使用excel打开这个csv文件,则这个数据自动显示为科学计数法,但是值的最后一位已经从8变成0:

误差

这个值代表的双精度浮点数,误差-0.00000000000005

解决方法

网络上有几种解决方法:

方法1:使用文本导入向导(亲测有效)

不要直接双击打开CSV文件。而是首先打开Excel,然后使用"数据"菜单上的"从文本获取数据",导入该CSV文件:

文件类型选"分隔符号":

分隔符选"逗号",文本识别符号可以任意或根据实际选择:

最关键的这步!默认所有列都是按照常规方式导入,问题就出在这里:

必须选中第4列,改为文本:

如果是WPS,可以在文件/选项/新特性,对话框,去掉"打开CSV文件是不弹对话框"前面的勾:

以后双击文件打开时,即可先指定每一列的格式,这样打开的CSV文件不会因为自动转换为科学计数法而损失精度:

方法2:在CSV文件中预格式化

在打开CSV文件之前,您可以通过在订单号前加上一个等号和双引号来预格式化这些数字。例如,将订单号 1234567890123456789 修改为 ="1234567890123456789"。这样做可以让Excel把这些值当作文本处理。

方法3:使用文本编辑器预处理

使用文本编辑器(如记事本)打开CSV文件。

手动添加一个单引号 ' 在每个长数字前。例如,将 1234567890123456789 修改为 '1234567890123456789。

保存CSV文件,然后用Excel打开。

相关推荐
许彰午1 天前
74_Python自动化办公之Excel操作
python·自动化·excel
E_ICEBLUE1 天前
在 Python 中快速锁定 Excel 单元格与行列
python·安全·excel
Non-existent98718 天前
WPS批量清理单元格空白字符的4种方法-异常数字格式处理-实战
excel·wps
Channing Lewis18 天前
PHP 解析 Excel 的那些坑:一次“行号错位”引发的数据丢失
开发语言·php·excel
jarreyer18 天前
【数据分析绘图】excel绘图和bi工具区别
数据挖掘·数据分析·excel
chatexcel18 天前
ChatExcel Max使用教程:图片、PDF、网页与复杂Excel的一站式数据分析
数据分析·pdf·excel
cngkqy18 天前
excel从某一列中用match筛选匹配的数据
excel
qq_5469372718 天前
Excel批量转PDF_Word_图片,支持自动合并报表,效率翻倍。
pdf·word·excel
ai_coder_ai18 天前
在自动化脚本中操作excel文件
运维·自动化·excel
三千花灯18 天前
【Playwright】 自动化测试之参数化登录(Excel/CSV 数据源)
人工智能·机器学习·excel