C#字符串中的引号和斜杠

Quotation mark and slash mark in C# string

我想在 C# 中执行 cmd 命令。下面的命令 AAA 在 Windows 10 cmd 中工作。以下代码的字符串 AAA 部分在 C# 中的格式不正确。如何将此 cmd 命令更改为正确的 C# 字符串格式?

System.Diagnostics.Process process = new System.Diagnostics.Process();
            process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
            process.StartInfo.FileName = "cmd.exe";
            string AAA= "curl -X POST --header "Content-Type: application/json" --header "Accept: application/json" -d "@xxx.json" "https://some.org/api/oauth/token"";
            process.StartInfo.Arguments = AAA;

您可以在引号字符 " 之前使用反斜杠 \ 进行转义。使用以下代码。

string AAA = "curl -X POST --header \"Content-Type: application/json\" --header \"Accept: application/json\" -d \"@xxx.json\" \"https://some.org/api/oauth/token\"";

勾选 fiddle - https://dotnetfiddle.net/Kfz4ca

@放在字符串前面并用双引号引起来。

string AAA = @"curl -X POST --header ""Content-Type: application/json"" --header ""Accept: application/json"" -d ""@xxx.json"" ""https://some.org/api/oauth/token""";
string AAA = @"curl -X POST --header ""Content - Type: application / json""--header ""Accept: application / json"" - d ""@xxx.json"" ""https://some.org/api/oauth/token""";