易截截图软件、单文件、免安装、纯绿色、仅160KB

郁闷,python 0d0a换行问题

import os,sys,zipfile
teststr = open('1.txt').read()
zipFile = zipfile.ZipFile('test.zip','w')
zipFile.writestr('test.txt',teststr)
zipFile.close()

上面的代码,1.txt里的换行是0d0a
可是写到zip里面的test.txt的换行确是0a
为什么?
文本没所谓吧,压缩一般用2进制读写,所以计较的话python内建open的模式用'rb',或者干脆用zipFile.write开档压缩都应该是一致性...

二进制处理 teststr = open('test.txt', 'rb').read()

zipfile里不用管换行是什么吧。文本文件才要注意0d0a或0a

zip不用管,但把ZIP解压后,换行就不是原来的换行了。

引用
zipfile里不用管换行是什么吧。文本文件才要注意0d0a或0a


确实存在这种问题的可能.
因为Python在将字符串从1.txt读取出来之后,会将Windows中的换行(回车换行0d0a)转换成0a,所以,在写入zip文件后就变成了0a。

转换的原因是打开1.txt文件的模式为ASC码方式,也就是以文本方式打开的缘故,以文本方式打开文件,文件的某些字符会被转换。如果不想改变文件中的某些控制字符,那么应该以二进制的方式打开文件,读取文件。


相关问答:

IIS 7 python 2.6 cgi 文件上传问题

我每次上传的文件读到的数据都不正确。2M 的图片读得10多K 。。哪位大侠可以帮帮我啊。
#!D:\ProgrammerTools\python26\python.exe
#encoding=utf-8
import cgitb
import os
cgitb.enable()
import cgi,urllib ......

python怎么print 'hello world'

大家好,我是一个新手,刚开始学python,但是刚开始的helloworld都没法打印,让我很无奈。
我的python安装路径为f:\python31。在path中也设置对了,在windows下运行是这样显示的,希望各位前辈指点一下。谢谢
Pyth ......

python如何抓win32程序中listbox的信息

比如我需要用python 对win32程序进行一定的控制

对textbox输入一串字符串
按某个botton

对listbox里的的内容读取,存成字符串


该如何操作?
或者哪里有文档例子?

非常感谢 ......

IronPython中如何添加Python模块?

IronPython中的功能太少了,很多常用的Python模块都没有,也加上不。
还得用CLR来扩展。
搞到方法了,如下:
Python code:

import sys #导入sys module;
sys.path.append("c:/Python24/Lib") ......

python编辑zip文件

菜手请教诸位老鸟:
我希望编辑zip压缩包里的一个文本文件。怎么解决比较合理?
我的想法:先把ZIP解压,再编辑文本,然后再压缩成ZIP并把解压过的文件删除。不过感觉有些繁琐,可不可以直接读ZIP然后修改呢? ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号