我在写文件时遇到问题 - 我想用字节写,所以我做了一个代码:
read_file = open(data,"wb")#data is the path of the file
new_file.write(read_file.read)
read_file.close
它抛出了我的错误
TypeError: 'builtin_function_or_method' does not support the buffer interface
在第二行(new_file.write(read_file.read)
)
有人可以帮帮我吗?
此外,如果我将一些字节写入文件然后关闭它,并再次将字节写入文件,它们将连接起来。例如,如果第一个字节是10101101
而第二个字节是10111101
,它们将被读作1010110110111101
?
答案 0 :(得分:0)
read_file= open(data,"wb")#data is the path of the file
new_file.write(read_file.read)
应该是
read_file= open(data,"rb")#data is the path of the file
new_file.write(read_file.read())
read_file.read
是一个函数/方法,您希望将字符串传递给new_file.write()
。通过调用read .read()
,您将创建一个包含文件内容的字符串。
关于如何将字节写入文件,.write("10101101")
将不将换行符"\n"
附加到输出。因此,所有后续写入都将出现在文件的同一行。要将它们放在换行符上,您可以.write("10101101"+"\n")