Python的文件对象现在可以支持行尾约定,而不是运行Python的平台所遵循的约定。以“ U”或“ rU”模式打开文件将以通用换行模式打开文件以进行读取。在所有文件方法(如read()和readline())返回的字符串中,所有这三行结尾约定都将转换为“ \ n”。
在Python 3中,通用换行符是打开文本文件的默认模式。这意味着,在打开文本文件时,我根本不必关心行尾的约定。
我们在C#中也有这样的便利功能吗?
答案 0 :(得分:3)
StreamReader.ReadLine
执行此操作:
一行定义为一个字符序列,后跟换行符(“ \ n”),回车符(“ \ r”)或回车符后紧跟换行符(“ \ r \ n ”)。返回的字符串不包含回车符或换行符。
从文件中读取行的便捷方法,例如File.ReadLines
和File.ReadAllLines
,请在内部使用StreamReader
。
我不知道有任何方法可以将文件中的多行读取为字符串,但是会用规范化的\n
静默替换所有行尾字符。 StreamReader.ReadToEnd()
不会以这种方式处理其读取的文本。