斑竹你实验没有/
wolfg 回复于:2005-09-11 20:09:25
引用:原帖由 "nbfan" 发表:
这个方法不行 .file.write()都写不了中文了。晕.
斑竹你实验没有/
你的代码怎么改的?有错误信息?出现什么现象?
你具体的情况我们无法了解,只能根据你的只言片语给你一些提示,如果不符合你的情况,也请你自己有些钻研的精神。。。
nbfan 回复于:2005-09-12 12:42:07
代码如下
# -*- coding: UTF-8 -*-
import os,sys,string,codecs
def filename(dir):
namelist=[]
filelist=os.listdir(dir)
for i in filelist:
if i[-4:]==".jpg":
namelist.append(i[:-4])
return namelist
if __name__=="__main__":
file=codecs.open("config.txt", "w", "utf-8")
name=filename(os.getcwd())
file.write("&pics="+string.join(name,"|")+"&"+"\n")
file.write("&names="+string.join(name,".txt|")+".txt&")
#os.system('attrib +h config.txt')
file.close()
错误信息
Traceback (most recent call last):
File "C:\Python24\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 310, in RunScript
exec codeObject in __main__.__dict__
File "D:\nbfan\MyDocuments\flash\触摸屏程序1\autoconfig.py", line 13, in ?
file.write("&pics="+string.join(name,"|")+"&"+"\n")
File "C:\Python24\lib\codecs.py", line 444, in write
return self.writer.write(data)
File "C:\Python24\lib\codecs.py", line 178, in write
data, consumed = self.encode(object, self.errors)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xca in position 8: ordinal not in range(128)
请帮忙看看。
wolfg 回复于:2005-09-12 15:22:09
try
import os
import sys
import string
import codecs
def filename(dir):
namelist=[]
filelist=os.listdir(dir)
for i in filelist:
if i[-4:]==".jpg":
namelist.append(i[:-4])
return namelist
if __name__=="__main__":
o_file = open("config.txt", "w")
name = filename(os.getcwd())
o_file.write( codecs.BOM_UTF16 )
for i in name:
o_file.write(i.decode('gb2312').encode('utf16'))
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 格式 保存 文件 如何 文本 请教 回复 name nbfan dir |
注册
个人空间
