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

相关推荐
YL雷子8 小时前
纯前端使用ExcelJS插件导出Excel
前端·vue·excel
泉城老铁20 小时前
EasyPoi实现百万级数据导出的性能优化方案
java·后端·excel
泉城老铁21 小时前
Spring Boot 整合 EasyPoi 实现复杂多级表头 Excel 导出的完整方案
java·后端·excel
sql2008help21 小时前
数据分页异步后台导出excel
java·excel
小灰灰搞电子1 天前
Qt 使用QtXlsx库处理Excel文件
qt·excel
爱编码的程序员1 天前
python 处理json、excel、然后将内容转化为DSL语句,适用于数据处理(实用版)
人工智能·python·ai·json·excel·数据处理·dsl
ashcn20011 天前
vim 组件 使用pysocket进行sock连接
python·vim·excel
家有狸花1 天前
EXCEL删除数据透视表
excel
wtsolutions1 天前
免费MCP: JSON 转 Excel MCP
json·excel·api·csv·mcp·wtsolutions
Hygge-star2 天前
【Excel】利用函数和Power Query进行数据分析
数据挖掘·数据分析·excel