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打开。

相关推荐
温轻舟12 小时前
Python自动办公工具01-Excel文件编辑器
开发语言·python·编辑器·excel·温轻舟
WarPigs15 小时前
Unity编辑器开发笔记
unity·编辑器·excel
allbs17 小时前
spring boot项目excel导出功能封装——3.图表导出
spring boot·后端·excel
lqz199320 小时前
根据html导出excel和word
html·word·excel
12程序猿20 小时前
postman调用文件(.xlsm---带宏的excel文件)下载接口成功下载excel文件,浏览器访问下载文件打不开
excel·lua·postman
刻BITTER1 天前
用EXCEL 将单色屏幕的Bitmap 字模数据还原回图形
单片机·嵌入式硬件·excel·arduino
匿者 衍1 天前
POI读取 excel 嵌入式图片(支持wps 和 office)
java·excel
天外天-亮1 天前
Vue + excel下载 + 水印
前端·vue.js·excel
allbs2 天前
spring boot项目excel导出功能封装——2.高级导出
spring boot·后端·excel
睿思达DBA_WGX2 天前
使用 Python 的第三方库 xlrd 读取 Excel 文件
python·excel