我正在读取C#中的资源文件(.resx)中的值,并且在该值中,我添加了\ r \ n \ r \ n,以便以正确的格式显示它。例如blah\r\n\r\nblah
由于某种原因,字符串会自动添加一个'\',因此有效的文本变为blah\\r\\n\\r\\nblah
,因此它会转义字符序列。
答案 0 :(得分:2)
尝试使用 Shift + Enter 在.resx文件中添加新行,而不是\r\n
。或者像str = str.Replace("\\r\\n", "\r\n");
答案 1 :(得分:0)
当您存储字符串时,转义字符存储为字符串文字的一部分,并且不再“转义”任何内容。您可以做的一件事是在阅读后用换行符替换占位符字符串“\ r \ n”。
例如:
private static void Main()
{
var resourceStr = "blah\\r\\n\\r\\nblah";
Console.WriteLine("Original resource string:");
Console.WriteLine(resourceStr);
Console.WriteLine("\nAfter calling replace:");
Console.WriteLine(resourceStr.Replace("\\r\\n", Environment.NewLine));
Console.WriteLine("\nDone!\nPress any key to exit...");
Console.ReadKey();
}
<强>输出强>