我的 C# 应用程序将其用双引号括起来的完整路径写入文件,其中:
streamWriter.WriteLine("\"" + Application.ExecutablePath + "\"");
通常它可以工作,写入的文件包含
"D:\Dev\Projects\MyApp\bin\Debug\MyApp.exe"
但是,如果我的应用程序的可执行路径包含#,就会发生一些奇怪的事情。输出变为:
"D:\Dev\Projects#/MyApp/bin/Debug/MyApp.exe"
# 之后的斜杠变为正斜杠。这会导致我正在开发的系统出现问题。
为什么会发生这种情况,有没有一种比字符串更优雅的方法来防止它。在写入之前替换路径?