Tag: 反斜杠

C#verbatim string literal无法正常工作。 非常奇怪的反斜杠总是加倍

我已经尝试了很长时间才弄清楚发生了什么事情,但除了我之外,我没有发现任何人遇到过这个问题。 我只是想把一个路径硬编码成一个字符串。 简单的东西。 好吧,出于某种原因 string fullPathSourceFile = @”c:\SQLSOURCE.txt”; 正在评估c:\\SQLSOURCE.txt 我已经尝试了一切来评估它到一个反斜杠删除双引号,它不会工作。 我甚至尝试过Replace(@”\\”, @”\”)并且没有任何影响。 任何人都知道我的代码会发生什么事情会在评估单个代码时强制出现双反斜杠? 这让我疯了,这太容易了,但却让我很沮丧。 然后我使用下面的字符串变量: using (StreamReader reader = new StreamReader(fullPathSourceFile)) { string line; while ((line = reader.ReadLine()) != null) { sqlDBsource = line.ToString(); } reader.Close(); } 感谢大家的投入,这有助于我弄清楚我做错了什么。 在Visual Studio中(这是令人困惑的)当你在调试器中查看字符串的值时,它会为你提供转义,因此在监视窗口或变量值弹出窗口中的双反斜杠是正常的,并不意味着实际存在两个反斜杠。 当您将鼠标hover在变量上或在观察窗口中观看时,单击工具提示/窗格右侧的放大镜图标,这将显示未校正的字符串将打印到控制台。 显示实际结果的另一种方法是:Console.WriteLine(the_problem_string); 我对代码的问题超出了post的范围,但是我从Visual Studio看到的结果混乱让我相信字符串是问题的根源而不是。

将反斜杠添加到字符串

我有一个路径,我想添加一些名为test的新子文件夹。 请帮我看看如何做到这一点。 我的代码是: string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures); Console.WriteLine(path+”\test”); 我得到的结果是:“c:\ Users \ My Name \ Pictures \ test” 请帮我找出正确的方法。

用双反斜杠替换单反斜杠

看起来很简单吧? 好吧,我不知道。 这是我正在尝试的代码: input = Regex.Replace(input, “\\”, “\\\\\\”); 但是,我收到一个错误, ArgumentException未处理 – 在模式结束时解析“\” – 非法\。 我该怎么做呢?