SOLUTION: 變化ConfigParser.py 一切與\ n應是\ r \ N,這樣Linux和Windows可以讀取行返回文件。 這爲我們修復了它。Python 2.7版的Linux n到Windows r n
我正在Linux中編寫程序,它與Windows 10 PC進行通信。我從Windows PC獲取文件並使用Python ConfigParser設置新值。當我將它從Linux寫入Windows時,換行符會混亂。有沒有辦法在Python 2.7中很好地處理這個問題?
編輯1: 我們有一個內部配置的txt文件,我們從一個運行raspbarian的樹莓派3讀取它。
[header]
source1 = variable1
source2 = variable2
如果被讀取並再次寫入的輸出中是如下因素:
[header]source1 = variable1source2 = variable2
這種轉換之後,我們的窗戶10件TXT閱讀器無法讀取該文件了。
編輯2:也許這會有所幫助。這是代碼從ConfigParser.py塊:
def write(self, fp):
"""Write an .ini-format representation of the configuration state."""
if self._defaults:
fp.write("[%s]\n" % DEFAULTSECT)
for (key, value) in self._defaults.items():
fp.write("%s = %s\n" % (key, str(value).replace('\n', '\n\t')))
fp.write("\n")
for section in self._sections:
fp.write("[%s]\n" % section)
for (key, value) in self._sections[section].items():
if key == "__name__":
continue
if (value is not None) or (self._optcre == self.OPTCRE):
key = " = ".join((key, str(value).replace('\n', '\n\t')))
fp.write("%s\n" % (key))
fp.write("\n")
請給一個例子。你可以簡單地用'\ r \ n'替換'\ n'。 – erip
http://stackoverflow.com/a/13954932/4889267 – AK47
在你的windows上獲取一個真正的文本編輯器。這是一個恥辱,2016年仍然有文字編輯不能閱讀這兩種風格。 – spectras