zoukankan      html  css  js  c++  java
  • php导出CSV时,超长数字精度丢失问题与前导0的字符串丢失0的问题解决

    php生成的CSV有时候会遇到两个特殊情况:

    1、输出的字段中,含有超长数字(18位的数字)比方身份证:122121197410180016,就算输出时字段加上"",还是会被识别成数字。而且丢失精度,后面的4位会变成0。象这个样子122121197410180000

    2、输出的字段中。含有前导0的数字字符串,会被强制丢掉前导0。比方:01082151122,或者00001,00002,系统会强制识别成 1082151122,1,2这种数字。


    针对上面的问题,仅仅能说excel太邪恶了,无法通过常规办法没法解决。

    很归方案有2个:

    1、能够在excel中通过。菜单->数据->导入文本数据 这个方式来手动设定字段为文本类型然后导入。可是这个对于用户而言操作难度太大了,因此这个方式不可行。

    2、用更邪恶的办法搞定excel,在字段末尾加上一个 的制表符," "非常特殊,在excel是不会被显示出来的但他的确存在。然后打开文件的时候这个字段就会被默认当成字符串来处理了。(后遗症就是字段里确实有一个 在里面,入假设仅仅是拿来看到是没有问题,可是还要把这个东西导入异构系统时 会导致不可预知的错误)。

    唉,自己权衡吧,我也仅仅想到这两个方案。

    万恶的excel。

  • 相关阅读:
    Simple Form Fading
    CResizableFormView
    User-Defined Multi-Lingual Applications
    Automatic Resizing of a FormView Based Application When the User Toggles the Control Bars On or Off
    Save Zip File in Access Database With File Encryption in C#
    continue
    break
    declare/typeset
    bg/fg/jobs
    .
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5261137.html
Copyright © 2011-2022 走看看