Ris*_*ati 2 python encoding jpeg copy
我完成了复制txt文件并试图用jpg文件做同样的事情.但我经常遇到编码错误.我的代码是:
def fcopy(source, target):
data = ''
with open(source, encoding='Latin-1') as f:
data = f.read()
with open(target, 'w') as t:
t.write(data)
fcopy("source.jpeg","dest.jpeg")
Run Code Online (Sandbox Code Playgroud)
我也尝试过使用encoding = utf8和utf16.但没有奏效,错误如下:
Traceback (most recent call last):
File "C:/Users/Mark-II/Desktop/fileCopy.py", line 7, in <module>
fcopy("source.jpeg","dest.jpeg")
File "C:/Users/Mark-II/Desktop/fileCopy.py", line 3, in fcopy
with open(source, encoding='Latin-1') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'source.jpeg'
>>>
Run Code Online (Sandbox Code Playgroud)
请帮忙.
尝试以"二进制模式"打开文件.根据open方法的文档,这默认为文本模式.这解释了为什么它适用于文本文件,并在非文本文件(如jpg图像)上失败.在二进制模式下打开文件时,您无需使用命名参数进行编码.
def fcopy(source, target):
with open(source, 'rb') as f:
data = f.read()
with open(target, 'wb') as t:
t.write(data)
fcopy("source.jpeg","dest.jpeg")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
77 次 |
| 最近记录: |