微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在c#中写入文件时如何用变量显示双引号?

如何解决在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+"""/>");

但它显示一个语法错误

解决方法

为了在结果中使用两个双引号产生一个双引号,需要在字符串字面量前加上 .gpx。所以这是一个语法错误:

@

但这不是:

"""/>"

简单地将 @"""/>" 添加到您的字符串文字中,就像您已经为其他字符串文字所做的那样:

@

或者,如果这是一个足够新的 C# 版本,您可以使用字符串插值对其进行清理:

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"/>

更多详情:

Strings (C# Programming Guide)

String interpolation in C#

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。