[英]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.