C#从SQL服务器中删除字符串中的NewLine字符

所有(这是回归基础!),我从SQL Server中获取了一串信息。 字符串是这样的

Hello, my name is Frank Butcher\n\n and I work at Watford Car lot, and I am 65 years old. 

该消息将被拉入消息框以提供有关进程的信息。 我用它读了字符串

 SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandTimeout = 0; cmd.CommandText = strSQL; strResult = cmd.ExecuteScalar().ToString(); 

这会得到字符串,但是当我把它放到我的文本框中时,消息显示时\n\n没有所需的双NewLine。

我试过用

 strResult = strResult.Replace("\n", Environment.NewLine); 

在字符串上,但这没有帮助。 我精神错乱,我做错了什么?

谢谢你的时间。

我假设你已经存储了一个文字反斜杠,然后在数据库中的字符串中存储了字符“n”,而不是换行符。 因此,您必须执行您正在执行的String.Replace

你是如此接近,但你需要逃避反斜杠:

 strResult = strResult.Replace("\\n", Environment.NewLine); 

在没有转义反斜杠的情况下,编译器将\n解释为换行符的特殊转义序列,因此您的行等同于“用NewLine替换NewLine”(您已经发现它什么都不做)。

或者,您可以在字符串常量前加上@符号,这意味着将其视为文字:

 strResult = strResult.Replace(@"\n", Environment.NewLine);