JiaYu_Guo
2018-07-30 08:48
采纳率: 33.3%
浏览 3.6k
已采纳

.csv文件用Excel编辑后用记事本打开是乱码?

首先.csv文件用记事本打开是正常的,可以看到数据,然后用Excel打开点击保存后,再用记事本打开该.csv文件就变成乱码了。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • ansenwang 2018-07-30 08:51
    已采纳

    1、把“.csv”后缀名直接修改为“.txt”,转变为文本格式文档;
    2、打开一个新的excel工作表,选择“打开”,在下方把文件类型修改为“文本文件”,然后选择刚才转变为.txt格式的文件;
    3、打开文件后悔跳出“文本导入向导”对话框,如下图,可能是乱码,如何解决呢?看第4步;
    4、将“文件原始格式”修改为windows(ANSI)
    效果如下图,已经是正确的文字;
    5、单击第4步的“下一步”,跳出下图“文本导入向导-步骤2”,在分隔符号里面选择“其他”,输入英文字符逗号,不是中文字符的逗号,不要输错,然后点击“下一步”;
    6、跳出“文本导入向导-步骤3”窗口,根据不同的列数值,设置相应的格式,例如,我这里的测试表中,把“账号”这一列设置为“文本格式”;
    7、最后选择“完成”,你就能看到原来没有出错/乱码的excel的效果。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • ansenwang 2018-07-30 08:54

    你用EXCEL编辑保存的时候需要选择另存为,再把保存类型选择为CSV文件

    评论
    解决 无用
    打赏 举报
  • xcgh 2018-07-30 09:05

    1.可能编码格式不同
    2.单元格里编辑数据肯定会导致格式改变
    所以建议最好直接改文件,不用excel改或打开

    评论
    解决 无用
    打赏 举报
  • 方法1建议使用word或记事本打开,再则先另存新档后用excel打开
    方法2如果你的机器上装了 Microsoft Excel 的话,.csv 文件默认是被 Excel 打开的。需要注意的是,当你双击一个.CSV 文件,Excel 打开它以后即使不做任何的修改,在关闭的时候 Excel 往往会提示是否要改成正确的文件格式,这个时候如果选择“是”,因为 Excel 认为.CSV 文件中的数字是要用科学记数法来表示的,Excel 会把 CSV 文件中所有的数字用科学计数来表示(2.54932E+5 这种形式),这样操作之后,只是在 Excel 中显示的时候会不正常,而 csv 文件由于是纯文本文件,在使用上没有影响;如果选择了“否”,那么会提示你以 xls 格式另存为 Excel 的一个副本。
    所以如果你的 CSV 文件绝大部分都是用在集图上的话,建议把.CSV 的默认打开方式改成任意一个文本 编辑器,系统自带的记事本就是个不错的选择。

    评论
    解决 无用
    打赏 举报
  • cug_xy 2018-07-30 09:16

    我碰到过这个问题,原因是:excel 在打开 .csv 文件时会读取文件头并设置编码格式,通常我们写入 .csv 文件时是不会写入文件头的,那么Excel就会默认以 utf-8-bom的格式打开,导致中文乱码,这里解决办法是写入的时候设置文件打开方式:

    def write_to_csv(filepath, field, rows):
        '''
        写 csv 文件, 以 utf-8 bom 格式写入,保证 excel 打开时中文无乱码。
        :param filepath:
        :param field:
        :param rows:
        :return:
        '''
        with open(filepath, 'w', encoding='utf_8_sig') as cf:
            write = csv.DictWriter(cf, fieldnames=field)
            write.writeheader()
            write.writerows(rows)
    
    
    评论
    解决 无用
    打赏 举报
  • AJ-Gordon 2018-07-31 02:48

    原因:EXCEL的编码问题导致的乱码
    解决:EXCEL打开CSV后,另存为的时候选择.xlsx,再点击‘工具’,找到编码更改一下为'utf8'或者‘简体中文(gb2312或gb18030)’即可
    图片说明

    评论
    解决 无用
    打赏 举报
  • 「已注销」 2018-07-31 07:18

    导出csv的时候需要iconv转码一下,而且win和liunx中的编码也不一样,你需要根据你的系统来判别是否转码,已经转码的格式。如果不明白可以私聊我。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题