为什么同一个文件读写python程序在linux和windows下结果不同?

问题描述 投票:0回答:1

这是我的python程序,它们都生成.object文件,但我的软件只能成功加载windows重新生成的文件,而不是linux。

file_path = 'D:\\xxx\\batch_sim_scene\\base\\CubeMoving.object'
new_file_path = '.\\CubeMoving.object'

with open(file_path, 'r', encoding='utf-8') as file:
    lines = file.readlines()
file.close()
 
with open(new_file_path, 'w', encoding='utf-8') as file:
    for i in range(len(lines)):
        file.writelines(lines[i])

我希望该程序在 Linux 中与 Windows 中运行相同,任何人都可以告诉我问题是什么?

python linux windows file-writing
1个回答
0
投票
with open(file_path, 'r', encoding='utf-8') as file:
    lines = file.readlines()
file.close()
 
with open(new_file_path, 'w', encoding='utf-8', newline='\n') as file:
    for line in lines:
        file.write(line.rstrip('\n') + '\r\n')

问题是在 Linux 中换行符是 ' ',但在窗口中新行是 ' '

© www.soinside.com 2019 - 2024. All rights reserved.