概括:
excel以表格形式打开txt文本,为每个数据设置正负号并且采用科学计数法的形式,最终得到每个数据的字符长度相同的结果。
用途:
便于其他程序读取TXT中数据时候,一次性读取多少个字符,比较好控制。
缺点:
Excel2007及以后的版本最大行数是1048576行,最大列数是16384列。所以如果数据超过104万行和1万6千列的时候,一定要注意提前处理txt,否则excel文件无法打开。
具体步骤:
如何用excel以表格形式打开txt文件,具体步骤参考数据处理技巧(1):excel 将 txt 文件打开,excel快速选定特定范围的数据进行处理
假定已经顺利用excel打开txt文件,
先选中数据,右键->单元格格式-
选择“科学计数法“,再选好“小数位数“,最后选择“确定”
查看一下数据是否统一,
然后“另存为“->”这台电脑“->”文本文件(制表符分隔)txt”,然后选择”确定“
打开生成的txt,发现里面的数据就很整齐,如果需要,还可以用UltraEdit软件进行调整
同理,有正数有负数的txt文件通过excel导出,由于需要在正数前面加 +,在负数前面加 -,同时要呈现科学计数法的形式,所以进行以下设置。
Excel 选择单元格格式->自定义->设置为红框圈出的样子,需要自己手动填写。
注意:这里的小数点数量不是乱写的,一定要看数据精确到几位,才能确定小数点的数量到几位,以免出现数据不同,但经过科学计数法略去小数点之后数据相同的情况。
可以看到由于坐标有点是负数,所以txt数据还是有点不整齐,不过已经比非科学计数法好很多了。虽然不整齐,不过不影响。+和 - 都是各算一个字符。
这样,就可以完成每次读取固定字符长度,都可以读到想要的数据,并且正数和负数所需要的长度都是相同的。
还可以在第一列前面再加一列,这样会使得数据更加整齐。
举例说明
举个例子,上面的txt图片的第一行是:
1.00E+00 2.00E+00 3.00E+00
注意,1.00E+00前面还有一个空格。从左边到右边数,空格算一个字符,1.00E+00一共有8个字符,所以从左到右一次读取9个字符,就包括了空格和1.00E+00,就可以成功将第一行第一列的数据读取了。然后再读取9个字符,这次是空格和2.00E+00,也成功将第二行第二列数据读取。
这就意味着每一行从左边到右边一次读取9个字符,一共读取3次9个字符,这样就能将一行的三个数据读取。
从右边往左边读取也是一样的,从右往左一次读取9个字符(9个字符仍是从左到右边排列)是3.00E+00和空格,这样将第三个数据读取;再读取9个字符是2.00E+00和空格。以此类推…
总结:
利用科学计数法,利用正负号,利用第一列前方再加一个空格的列,来控制每一个数据的字符都相等,便于读取txt文件数据进行处理。