在 C# 中写入文件时如何显示带变量的双引号?
How to show double qoutes with a variable when writing to a file in c#?
我正在尝试使用 C# 将字符串写入文件,我要查找的输出应该是这样的
<meta name="geo.region" content="Asia"/>
为了实现这一点,我尝试了这段代码,
writer.WriteLine(@"<meta name=""geo.region"" content="""+MetaTags.Region+"""/>");
但输出是,
<meta name="geo.region" content="Asia/>
“亚洲”后没有双引号
我也试过了
writer.WriteLine(@"<meta name=""geo.region"" content="""+MetaTags.Region+"""/>");
但显示语法错误
在 C# 中,您可以在双引号前使用反斜杠而不是双引号:
writer.WriteLine("<meta name=\"geo.region\" content=\"" + MetaTags.Region + "\"/>");
使用字符串插值:
writer.WriteLine($"<meta name=\"geo.region\" content=\"{MetaTags.Region}\"/>");
它将输出:
<meta name="geo.region" content="region"/>
更多详情:
为了使用两个双引号在结果中产生一个双引号,字符串文字需要加上 @
前缀。所以这是一个语法错误:
"""/>"
但这不是:
@"""/>"
只需将 @
添加到您的字符串文字中,就像您已经对其他字符串文字所做的那样:
writer.WriteLine(@"<meta name=""geo.region"" content=""" + MetaTags.Region + @"""/>");
或者,如果这是足够新的 C# 版本,您可以使用字符串插值稍微清理一下:
writer.WriteLine($"<meta name=\"geo.region\" content=\"{MetaTags.Region}\"/>");
如果您更喜欢反斜杠而不是双引号。
我正在尝试使用 C# 将字符串写入文件,我要查找的输出应该是这样的
<meta name="geo.region" content="Asia"/>
为了实现这一点,我尝试了这段代码,
writer.WriteLine(@"<meta name=""geo.region"" content="""+MetaTags.Region+"""/>");
但输出是,
<meta name="geo.region" content="Asia/>
“亚洲”后没有双引号
我也试过了
writer.WriteLine(@"<meta name=""geo.region"" content="""+MetaTags.Region+"""/>");
但显示语法错误
在 C# 中,您可以在双引号前使用反斜杠而不是双引号:
writer.WriteLine("<meta name=\"geo.region\" content=\"" + MetaTags.Region + "\"/>");
使用字符串插值:
writer.WriteLine($"<meta name=\"geo.region\" content=\"{MetaTags.Region}\"/>");
它将输出:
<meta name="geo.region" content="region"/>
更多详情:
为了使用两个双引号在结果中产生一个双引号,字符串文字需要加上 @
前缀。所以这是一个语法错误:
"""/>"
但这不是:
@"""/>"
只需将 @
添加到您的字符串文字中,就像您已经对其他字符串文字所做的那样:
writer.WriteLine(@"<meta name=""geo.region"" content=""" + MetaTags.Region + @"""/>");
或者,如果这是足够新的 C# 版本,您可以使用字符串插值稍微清理一下:
writer.WriteLine($"<meta name=\"geo.region\" content=\"{MetaTags.Region}\"/>");
如果您更喜欢反斜杠而不是双引号。