通过从网络下载字符串,是否可以使消息框读取下载文本中写入的\r\n
或Environment.Newline
等值?
在线短信包含:First line \r\n Second line
(进入文本文件)...我想把它放在消息框中,因为它在文件中格式化。
var message = await RemoteHandler.GetWebContent(RemoteHandler.RemoteMessageUrl);
MessageBox.Show(message, "Title", MessageBoxButtons.OK, MessageBoxIcon.Information);
当前输出:
第一行\ r \ n第二行
通缉输出:
第一行
第二行
答案 0 :(得分:1)
在一些不同的测试用例之后,我确定您的\r\n
很可能在您的字符串中存储为\\r\\n
,这会导致\r\n
打印为字符串文字,而不是Environment.NewLine
。您应该使用以下代码之一来更正此字符串:
message = message.Replace("\\r\\n", Environment.NewLine);
message = message.Replace(@"\r\n", Environment.NewLine);
通过使用双反斜杠,回车符和新行字符将被转义,从而按字面打印。这可能是数据问题,也可能是从远程资源加载字符串的问题。但是,这应该可以在消息框中正确打印新行。