![](/img/trans.png)
[英]In C#, how do I remove/replace the Double Quote inside another double quote within a comma delimited file?
[英]How do I replace PATH Environment variables to double quote + backslashes those which have spaces in C#?
语言版本:C#-操作系统:Win 10-IDE:Visual Studio
让用户设置路径时出现问题。 当路径没有空格时,一切都很好。 没有问题。
当路径中有空格时,CLI将数据转发到该CLI,不接受它,然后立即关闭。
这是因为到达时会错过正确的语法(开头和结尾的双引号+双反斜杠)。 因此正确的语法是:
app.exe -q MP3_128 -p "C:\\test test\\"
由于我在WMF中使用Environment.GetFolderPath,因此我不知道如何将这些添加到其输出中...
我该如何替换PATH环境变量以在C#中使用空格将那些变量加双引号和反斜杠?
Code:
if (Settings.Default.download == "")
{
MessageBox.Show("Be sure your download path doesnt contain any spaces!");
String path = Environment.GetFolderPath (Environment.SpecialFolder.MyMusic);
String pathDouble = path.Replace("'", "\"");
Settings.Default.download = @"""C:\\Test\DOWN LOADS""";
Settings.Default.Save();
}
在这里到达
Code:
if (Settings.Default.sm != "")
{
download.StartInfo.FileName = Settings.Default.sm;
string a = " -q " + qualitys + " -p " + Settings.Default.download + " " +
info[result.SelectedIndex].link;
Debug.Write(a);
download.StartInfo.Arguments = a;
}
硬编码的默认路径集有效。 但是,当用户使用GUI根据自己的喜好更改该路径时,它就消失了。
我认为我在编辑错误的代码。
我已经编辑了以下代码,现在只需要在驱动器后加一个\\即可:
using (var folderDialog = new FolderBrowserDialog())
{
if (folderDialog.ShowDialog() == DialogResult.OK)
{
Settings.Default.download = @"""" + folderDialog.SelectedPath + @"\\""";
Settings.Default.Save();
txb_download_folder.Text = Settings.Default.download;
}
}
但是如何?
第一个@“ \\”中的简单\\ extra导致\\“ C:\\ test test \\\\”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.