情景:

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即可.

最新文章

  1. Cocos2d-x 核心概念 - 坐标系(UI.OpenGL.世界坐标系.模型坐标系)
  2. hash 分区的用途是什么?
  3. (二)我的Makefile学习冲动&&编译过程概述
  4. PL/0编译器(java version)–PL0.java
  5. Redis 笔记与总结1 安装部署
  6. 数据库自定义表值函数Split(@LongStr, @SplitStr, @IsDistinct )
  7. android 手电筒的实现
  8. boost::thread boost库线程
  9. HBase 事务和并发控制机制原理
  10. perl 调用按钮输出到文本框
  11. Pro/Engineer wildfire 5.0 野火版系列下载及安装方法
  12. NOIP2015
  13. [51nod1213]二维曼哈顿距离最小生成树
  14. LeetCode算法题-Toeplitz Matrix(Java实现)
  15. [DP][NOIP2013]花匠
  16. 熊猫ios手游直播教程 苹果投屏电脑
  17. 潭州课堂25班:Ph201805201 并发(进程,线程)二 第十二课 (课堂笔记
  18. widows下 python环境变量配置
  19. 无法外网访问VM中的hadoop yarn的8088端口
  20. [工具] Dienstag

热门文章

  1. Kali Linux on Android # 实测:小米2s离线安装Kali Linux
  2. vijos1098 经典LIS变形
  3. 牛客网——E求最值
  4. 生成图片验证码(.NET)
  5. WebService学习总结(转)
  6. 算法笔记_025:字符串的全排列(Java)
  7. Java NIO理解与使用
  8. C语言 string::size_type类型
  9. python 安装包查看
  10. PHP 之 Ci框架下隐藏index.php