【发布时间】:2021-02-16 09:20:40
【问题描述】:
我正在使用 C# 编写一个应用程序,通常是一个 VB 用户,所以已经抛出了一些语法差异很容易解决的曲线球,直到这个......
我的应用程序设置中有几个字符串路径,例如*AppSetting_SourceFolder=C:\SourceFolder* 和 *AppSetting_DestFolder=C:\DestFolder\Processed*
在我的代码中,我有一个 FileSystemWatcher 正在监视源文件夹,对于出现在源文件夹中的某些文件,它们会被处理并移动到目标文件夹。我的问题是,当我将文件夹名称从设置中提取到变量或 FileSystemWatcher 时,它们不会按预期出现。
string sSourcePath = MyNameSpace.Properties.Settings.Default.AppSetting_SourceFolder;
string sDestPath = MyNameSpace.Properties.Settings.Default.AppSetting_DestFolder;
我在运行时观察变量是看到
sSourcePath 包含 "C:\\SourceFolder\\" 并且 sDestFolder 包含 "C:\\DestFolder\\Processed\\"
我已经查看了在我的设置参考前面使用字符串文字 @:
string sSourcePath = @MyNameSpace.Properties.Settings.Default.AppSetting_SourceFolder;
string sDestPath = @MyNameSpace.Properties.Settings.Default.AppSetting_DestFolder;
还有我的变量名的前面:
string @sSourcePath = MyNameSpace.Properties.Settings.Default.AppSetting_SourceFolder;
string @sDestPath = MyNameSpace.Properties.Settings.Default.AppSetting_DestFolder;
而且在我的两个部分的前面:
string @sSourcePath = @MyNameSpace.Properties.Settings.Default.AppSetting_SourceFolder;
string @sDestPath = @MyNameSpace.Properties.Settings.Default.AppSetting_DestFolder;
但结果不会改变。我该怎么做才能摆脱多余的\'s?
请注意,当我观看 @MyNameSpace.Properties.Settings.Default.AppSetting_SourceFolder 和 @MyNameSpace.Properties.Settings.Default.AppSetting_DestFolder; 时,结果是相同的(很多双 \ 的)。
做错了什么(或没做错)? 谢谢 史蒂夫
【问题讨论】:
-
没什么。反斜杠用于指示下一个字符是特殊字符,例如“\n”是返回。所以表明反斜杠是一个真正的反斜杠你使用两个反斜杠。
-
@JohnWu,有什么区别?
-
@Captsx1 点击链接
-
@JohnWu:Doh!谢谢你:)