Home > Backend Development > C++ > How to Escape Strings for C# String Literals?

How to Escape Strings for C# String Literals?

Mary-Kate Olsen
Release: 2025-01-28 00:51:09
Original
270 people have browsed it

C# string Words to rigid the righteousness guidelines

How to Escape Strings for C# String Literals?

In C#, the string word is represented by dual quotes. These literal quantities can use the rigid sequence (for example, T represents the formula, n represents the change symbol) to indicate special characters.

Convert the ordinary string to its righteous string representing form, you can consider the following methods:

Use code to generate

Using code generation technology, you can use CodedomProvider to generate the required string of string:

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();
        }
    }
}
Copy after login
This method follows the following steps to create a facade string representation form:

    Create a stringwriter to capture generated code.
  • Use CodedomProvider to generate code from the original expression of the input string.
  • Extracted the generated code from StringWriter.
Using Roslyn's Symboldisplay

A update method is to use Roslyn's microsoft.codeanalysis.csharp Nuget package:

private static string ToLiteral(string valueTextForCompiler)
{
    return Microsoft.CodeAnalysis.CSharp.SymbolDisplay.FormatLiteral(valueTextForCompiler, false);
}
Copy after login
This method generates the procedure by using Roslyn's Symboldisplay to generate the string of the righteousness, simplifying the process.

The above is the detailed content of How to Escape Strings for C# String Literals?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template