字符文本中的字符过多,在 C# 中使用字符串生成器

too many characters in character literal with string builder in c#

本文关键字:字符 字符串 文本      更新时间:2023-09-26

我正在使用字符串生成器,如下所示...

 protected void Page_Load(object sender, EventArgs e)
 {       
    System.Text.StringBuilder sb = new System.Text.StringBuilder(); 
    sb.Append("<script language='javascript'>function Open() {"); 
    sb.Append(string.Format("window.open('Chat.aspx?rid={0}'",lstRooms.SelectedValue));
    sb.Append(, 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;"); 
    sb.Append("}</script>"); 
    if (!ClientScript.IsClientScriptBlockRegistered("JSScriptBlock")) 
    {
        ClientScript.RegisterClientScriptBlock(this.GetType(), "JSScriptBlock", sb.ToString()); 
    }
    if (!ClientScript.IsClientScriptBlockRegistered("JSScriptBlock")) 
    {
        ClientScript.RegisterClientScriptBlock(this.GetType(), "JSScriptBlock", sb.ToString()); 
    }
    lblFacultyNo.Text = Session["User_Id"].ToString();
    lblUserType.Text = Session["User_Type"].ToString();
    pnlChat.Visible = false;        
}

现在我在这一行中遇到错误....

 sb.Append(, 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;"); 
对于哪个错误,我

得到了这个错误,请帮助我快速解决它......嗡

你需要使用引号,",而不是撇号,'你的字符串。

问题是你使用 ' 作为字符串文字,你应该使用 ". ' 用于字符。

语法着色应该在这里指导你。字符串格式不正确:

//sb.Append(,'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;");     
sb.Append(", 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500''");return false;"); 

最后要么

 right=500''");return false;"); 

right=500');return false;"); 

你缺少第 4 行开头的 "

如果你的意思是在return false之前加一个双引号,你需要转义它 - 注意我添加的反斜杠

sb.Append(",newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500''");return false;");

但是它看起来并不平衡 - 我没有看到匹配的双引号。