[英]Python Adds An Extra CR At The End Of The Received Lines
Java应用程序将XML发送到Python应用程序。 他们都在同一台机器上。 当我打开收到的文件时,我可以看到额外的行(因为额外的CR)。 这可能是什么原因?
这是接收者:
f = open('c:/python/python.xml', 'w')
while 1:
print("xxx")
data = socket.recv(recv_frame)
remain_byte = remain_byte - len(data)
print(remain_byte)
f.write(data)
if (something):
break
这是发件人:
while ((bytesRead = file_inp.read(buffer)) > 0) {
output_local.write(buffer, 0, bytesRead);
}
这是原始文件:
<root><CR><LF>
<SONG><CR><LF>
<ARTIST>Coldplay</ARTIST><CR><LF>
</SONG><CR><LF>
</root><CR><LF>
这是收到的:
<root><CR>
<CR><LF>
<SONG><CR>
<CR><LF>
<ARTIST>Coldplay</ARTIST><CR>
<CR><LF>
</SONG><CR>
<CR><LF>
</root><CR>
<CR><LF>
将文件模式从'w'
更改为'wb'
,否则Python会将任何换行符( '\\n'
)转换为特定于平台的表示形式(对于Windows,为'\\r\\n'
)。 二进制模式会抑制此转换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.