我用Java从Execl读出数据,写入222.txt文件,但打开222.txt文件时
UltraEdit-32会提示:档案可能不是DOS格式,您要转换成DOS格式吗?
无论我选转换还是不转换,其内容显示完全一致,
但如果我新建一个111.txt文件,然后在UltraEdit-32中把222.txt的数据copy到111.txt中并存盘。
比较111.txt文件和222.txt文件内容完全一致,但用comp命令比较会提示大小不一样
仔细查看,发现111.txt[Windows下复制的文件]文件是:18.7 KB (19,182 字节)  
222.txt[Java直接用输出流写的文件]文件是:18.5 KB (19,044 字节)为什么内容完全一致的文件却大小不同?Java写出的文件和Windows写出的文件比较为什么会小一点点?
由于是需要给银行AS/400系统识别入账,所以不知道这一点点的差别是否影响系统正常运行?
我需要的是111.txt大小的文件,因为我有个标准模板是和111.txt完全一样的。如果哪位高手知道答案请回复或回E-mial:[email protected]非常感谢!!

解决方案 »

  1.   

    dos格式,每行结束是回车换行(\r\n)
    非dos格式(unix等),每行结束只是换行(\n)每行少1个。//由于是需要给银行AS/400系统识别入账,所以不知道这一点点的差别是否影响系统正常运行
    如果它每次读1行,不影响; 不过最好是非dos格式
      

  2.   

    dos格式,每行结束是回车换行(\r\n)
    非dos格式(unix等),每行结束只是换行(\n)
      

  3.   

    还有一个,mac系统的换行为\r
      

  4.   

    没错,就是\n与\r\n之间的区别。
      

  5.   

    有二种行分隔符:换行符 Line Feed (LF)
    ASCII码为13 转义形式"\n"回车符 Carriage Return (CR)
    ASCII码为10 转义形式"\r" Unix系统中的一个LF表示换行, Machintosh系统中用一个CR表示换行, 而DOS/Windows系统中用CR+LF二个字符表示换行.
      

  6.   

    g 感觉也就是上面的道理UNIX和DOS的格式不同罢了