首页 > 编程语言 > 详细

[Python] 中文路径和中文文本文件乱码问题

时间:2015-03-12 18:31:57      阅读:284      评论:0      收藏:0      [点我收藏+]

情景:

Python首先读取名为log.txt的文本文件, 其中包含有文件名相对路径信息filename.

随后Python调用shutil.copy2(src, dst)对该filename文件进行复制操作.

由于filename为相对路径信息, 所以我们需要硬编码写入父目录, 假设为"C:\\源目录\\", 同时还有目标目录信息, 假设为"C:\\目标目录\\".

代码:

import shutil

def get_file_list(src):
    f = open(src, r)
    data = []
    for line in f.readlines():
        if len(line) > 2:
            line = line.replace(\n,‘‘)
            line = line.replace(\r,‘‘)
            data.append(line.decode(utf8))
    return data

def copy_file_to(ls, src, dst):
    for f in ls:
        shutil.copy(src + f, dst + f)
    
    
if __name__ == __main__:
    ls = get_file_list(u"log.txt")
    copy_file_to(ls, u"C:\\源目录\\", u"C:\\目标目录\\")

 

问题:

会出现各种编码出错, 乱码.

分析:

情境中, 有两个编码:

1. log.txt的编码

2. python脚本文件的编码.

如果这两个编码不匹配, 就会出现问题.

 

解决方案:

使用Notepad++将两个文件的编码都改为utf-8 No BOM即可.

[Python] 中文路径和中文文本文件乱码问题

原文:http://www.cnblogs.com/lancelod/p/4332853.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!