我们中出了一个叛徒

 1 #encoding:utf-8
 2 import os
 3  
 4 dir = r'c:\Users\mlxy\workspace\Project\src'
 5  
 6 def fetchFileRecursively(dir, fileExt):
 7     ''' 递归获取路径下所有指定扩展名的文件的绝对路径作为列表返回。'''
 8     result = []
 9     
10     files = os.listdir(dir)
11     
12     for i in files:
13         # 拼完整路径。
14         file = os.path.join(dir, i)
15         
16         if os.path.isdir(file):
17             result.extend(fetchFileRecursively(file, fileExt))
18         elif os.path.isfile(file):
19             if i.endswith(fileExt):
20                 result.append(file)
21             
22     return result
23 
24     
25 if __name__ == '__main__':
26     javas = fetchFileRecursively(dir, 'java')
27     
28     with open('result.txt', 'w') as f:
29         for i in javas:
30             with open(i, 'r') as file:
31                 f.write(file.read())
32  
33     print 'Done.'
干掉了啰嗦的部分

 

嗯……

有一个复制来的代码文件,它实际上是GBK的。

然后把它硬转成了UTF8,于是里面一段中文注释就乱码了。

但是因为是注释,结果就没报错,于是就没发现。

然后把这段乱码和其他的文件一起写出就全乱码了。

 

差不多就是这样……

 

总之现在没问题了。

 

话说我每次字符编码问题到最后也都解决了……

 

我是不是该开个字符编码的分类了……

posted @ 2015-04-23 10:26  Chihane  阅读(164)  评论(0编辑  收藏  举报