意外字符";将控制台应用程序参数用作路径c#时出错
本文关键字:路径 出错 参数 应用程序 字符 quot 控制台 意外 | 更新日期: 2023-09-27 18:28:39
我正试图使用我的控制台应用程序args作为路径来显示文件夹中的所有目录和文件。这些是我的命令行参数:"C:''Users''arnec''Documents"。这是我的代码目前看起来像:
static void Main(string[] args)
{
string[] directories = Directory.GetDirectories(args[0]);
string[] files = Directory.GetFiles(args[0]);
for (int i = 0; i < directories.Length; i++)
{
Console.WriteLine(directories[i]);
}
for (int i = 0; i < files.Length; i++)
{
Console.WriteLine(files[i]);
}
}
//这不起作用,它给了我一个:"意外字符"。如果我添加@,我会得到同样的结果
但出于某种原因,这确实有效:
string[] directories = Directory.GetDirectories(@"C:'Users'arnec'Documents");
string[] files = Directory.GetFiles(@"C:'Users'arnec'Documents");
如果您在十六进制编辑器中打开此文件,您可以在此行的末尾看到:
string[] files = Directory.GetFiles(args[0]);
值:
3B -> ;
E2 80 AA -> hidden character
0D 0A -> next line
你必须删除这个字符。
我将您的代码复制并粘贴到一个新的控制台项目中。