Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在命令行上调试C“&燃气轮机&引用-性格_C#_Visual Studio 2012_Command Line Arguments - Fatal编程技术网

C# 在命令行上调试C“&燃气轮机&引用-性格

C# 在命令行上调试C“&燃气轮机&引用-性格,c#,visual-studio-2012,command-line-arguments,C#,Visual Studio 2012,Command Line Arguments,我正在为客户创建一个小型命令行工具,并尝试验证其输出。输出已写入命令行本身。由于它是一个相当大的文件,被用作输入文件,因此需要写入命令行,因此我希望输出重定向到一个文件。 通常,我使用命令行参数将输出重定向到文件: a.exe ./input.txt > ./ouput.txt 但是,在我的程序中,我尝试验证输入: static void Main(string[] args) { if (args.Length != 1) throw new ArgumentE

我正在为客户创建一个小型命令行工具,并尝试验证其输出。输出已写入命令行本身。由于它是一个相当大的文件,被用作输入文件,因此需要写入命令行,因此我希望输出重定向到一个文件。 通常,我使用命令行参数将输出重定向到文件:

a.exe ./input.txt > ./ouput.txt
但是,在我的程序中,我尝试验证输入:

static void Main(string[] args)
{
    if (args.Length != 1)
        throw new ArgumentException();
    ...
args
现在是:

args[0] = ./input.txt
args[1] = >
args[2] = ./ouput.txt
老实说,我个人仍然只希望有一个参数,因为文件已经创建,因此shell确实理解我的意思。所以我做错了什么?我应该使用
args
还是其他什么?
提前谢谢你

是否通过Visual Studio传递参数?只有在取消选中启用Visual Studio宿主进程时,它才会起作用


图像和解释来自。

我猜您必须更改验证码。尝试添加括号,如:(a.exe./input.txt)>。/output.txt对我来说,它按预期工作。您是否也可以尝试
a.exe./input.txt>/output.txt
(不带空格)?
args.Length
应如您所料为1。您如何调用您的工具?你是在shell中键入命令行吗?Dan-o:我想改用外部库(),但对于这么简单的事情,我不想麻烦。对我来说,这也不会让事情变得更简单。亚历山大:我不能在VS2012中这样做,对吗?阿列克斯菲利波维奇:如果我在文件名周围不加引号,那就行了;-)无论如何谢谢你!我确实在寻找答案,但没有找到那篇文章。谢谢