确定字符串是否是C#中的换行符

par*_*dox 4 c# newline

我在某种程度上无法确定字符串是否为换行符.我使用的字符串是从Ultraedit使用DOS终结者CR/LF写的文件中读取的.我认为这等同于C#中的"\ r \n"或Environment.NewLine.但是,当我执行这样的比较时,它似乎总是返回false:

if(str==Environment.NewLine)
Run Code Online (Sandbox Code Playgroud)

谁知道这里发生了什么?

Dan*_*haw 7

线条是如何读取的?如果您正在使用StreamReader.ReadLine(或类似的东西),新行字符将不会出现在结果字符串中 - 它将是String.Empty或(即"").


Oli*_*ver 6

您确定整个字符串只包含一个 NewLine 而不是更多或更少吗?你已经试过了str.Contains(Environment.NewLine)吗?