c# - 尝试在字符串中插入转义字符时常量错误中的新行

标签 c# .net string insert

我正在编写一些 C# 代码,我在其中从数据库中获取值并使用它。我面临的问题如下。

如果我从数据库中获取的值是:

string cat1 = "sotheby's";

现在,在使用 cat1 时,我想在单引号前插入一个转义字符。为此,我编写了以下代码:

string cat1 = "sotheby's";

if (cat1.Contains("'")) {
    var indexofquote = cat1.IndexOf("'");
    cat1.Insert(indexofquote-1,"\");
    var cat2 = cat1;
}

错误出现在带有反斜杠(转义字符)的插入行上。错误是 New Line in Constant。

请帮我改正这个错误。

最佳答案

您不能只在 C# 代码中编写 "\"。这将产生“New Line in Constant”错误,因为它“转义”了第二个引号,因此它不算数。并且字符串没有关闭。

使用 "\\"(将 \ 自身转义)
或使用 @"\"(逐字字符串)。

关于c# - 尝试在字符串中插入转义字符时常量错误中的新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17739612/

相关文章:

c# - 设置鼠标悬停/用户单击按钮的样式

c# - 如何在C#中从MVC Controller 返回Json数据

.net - 如何在嵌入资源的 vb.net 中正确使用命名空间?

javascript - 检查字符串是否以某些东西开头?

c# - 如何使用 sqlcmd 验证查询是否成功执行?

c# - 将纪元时间戳转换为东部时间并使用 Nodatime 反转的优雅方法

c# - .NET Compact Framework 3.5 是否有 BackgroundWorker 替代品?

c# - 如果动态对象不包含属性,则获取默认值

javascript - 如何解析对象的字符串?

C:存储调用main时传递的参数