如何将字符串或字符转换为'转义表示'

本文关键字:转义 表示 转换 字符串 字符 | 更新日期: 2023-09-27 18:06:48

给定这个示例代码:

var s = "abc'r'ndef";
foreach (var c in s)
{
    Console.WriteLine($"Current char: {c}");
}

当然,''r'''n'字符分别写成空白和实际的换行符。我想要实现的是写''r', ''n'

将一个字符转换为它的最简单的方法是什么(c#)"逃表示"?我应该找Roslyn,还是有一个简单的转换函数?

如何将字符串或字符转换为'转义表示'

这应该可以回答你的问题,你可以在这里看到它:我可以将c#字符串值转换为转义字符串字面值

吗?
private static string ToLiteral(string input)
{
    using (var writer = new StringWriter())
    {
        using (var provider = CodeDomProvider.CreateProvider("CSharp"))
        {
            provider.GenerateCodeFromExpression(new CodePrimitiveExpression(input), writer, null);
            return writer.ToString();
        }
    }
}