在 C# 中使用字符串生成器追加带有双引号的字符
本文关键字:字符 追加 字符串 | 更新日期: 2023-09-27 18:31:13
嗨,我想附加该行
<%@ page language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" inherits="WebApplication1.WebForm1" %>
到文本文件,但我卡在"C#","WebForm1.aspx.cs"和"WebApplication1.WebForm1"部分,我的代码如下
public string HeaderContent1()
{
var sb = new StringBuilder();
sb.Append("<%@ Page Language=");
sb.Append("c#");// prints only c#
sb.Append("AutoEventWireup=");
sb.Append("true");
sb.Append("CodeBehind=");
sb.Append("WebForm1.aspx.cs");// prints only WebForm1.aspx.cs I want with double quotes
sb.Append("WebApplication1.WebForm1");// prints only WebApplication1.WebForm1 I want with double quotes
sb.Append("%>");
sb.AppendLine();
sb.Append("<html>");
sb.AppendLine();// which is equal to Append(Environment.NewLine);
sb.Append("<head>");
sb.AppendLine();
sb.Append("<h1>New File header</h1>");
sb.AppendLine(); // which is equal to Append(Environment.NewLine);
sb.Append("</head>");
sb.AppendLine();
sb.Append("<body>");
sb.AppendLine(); // which is equal to Append(Environment.NewLine);
sb.Append("<h2> New File Body</h2>");
sb.AppendLine();
sb.Append("</body>");
sb.AppendLine();
sb.Append("</html>");
sb.AppendLine();
}
尝试在
带引号的字符串中使用引号时,您有几个选项。
您可以转义引号:
sb.Append("'"WebForm1.aspx.cs'"");
或使用逐字符号:
sb.Append(@"""WebForm1.aspx.cs""");
您可以完全消除StringBuilder
:
var page = "<%@ Page Language='"C#'" AutoEventWireup='"true'" CodeBehind='"WebForm1.aspx.cs'" Inherits='"WebApplication1.WebForm1'" %><html>'r'n<head>'r'n<h1>New File header</h1>'r'n</head>'r'n<body>'r'n<h2> New File Body</h2>'r'n</body>'r'n</html>";
您可以在字符串之前使用 @
,并在要打印"
的位置添加""
sb.Append(@"""c#""");
将打印"c#"
.这是完整的修改代码
var sb = new StringBuilder();
sb.Append(@"<%@ Page Language=");
sb.Append(@"""c#""");
sb.Append(" AutoEventWireup=");
sb.Append(@"""true""");
sb.Append(" CodeBehind=");
sb.Append(@"""WebForm1.aspx.cs""");
sb.Append(" Inherits=");
sb.Append(@"""WebApplication1.WebForm1""");
sb.Append("%>");
sb.AppendLine();
sb.Append("<html>");
sb.AppendLine();
sb.Append("<head>");
sb.AppendLine();
sb.Append("<h1>New File header</h1>");
sb.AppendLine();
sb.Append("</head>");
sb.AppendLine();
sb.Append("<body>");
sb.AppendLine();
sb.Append("<h2> New File Body</h2>");
sb.AppendLine();
sb.Append("</body>");
sb.AppendLine();
sb.Append("</html>");
sb.AppendLine();
工作演示:https://dotnetfiddle.net/eEGgUJ