C# 无法将参数传递给控制台应用程序,我的想法是否有缺陷?
我已经创建了一个控制台应用程序,它接收并处理一个示例文本文件。当我通过VisualStudio调试它时,它工作得很好,但是当我尝试从命令行运行它时,参数没有传递 我的理解是,我应该能够通过调用应用程序并传递如下参数来运行该应用程序: 应用程序参数 在我的情况下是这样的: C:\Users\Alex\Desktop\ConsoleApplication2.application C:\Users\Alex\Documents\Sample.txt 我有什么明显的遗漏吗 但是,这样做会产生以下异常: “未处理的异常:System.IndexOutOfRangeException:索引超出数组的边界。位于ConsoleApplication2.TestProgram.Main(字符串[]args)” 参数应该通过C代码访问,如下所示C# 无法将参数传递给控制台应用程序,我的想法是否有缺陷?,c#,command,line,C#,Command,Line,我已经创建了一个控制台应用程序,它接收并处理一个示例文本文件。当我通过VisualStudio调试它时,它工作得很好,但是当我尝试从命令行运行它时,参数没有传递 我的理解是,我应该能够通过调用应用程序并传递如下参数来运行该应用程序: 应用程序参数 在我的情况下是这样的: C:\Users\Alex\Desktop\ConsoleApplication2.application C:\Users\Alex\Documents\Sample.txt 我有什么明显的遗漏吗 但是,这样做会产生以下异常:
public static void Main(string[] args)
{
System.Console.WriteLine(args[0]);
// Read the file as one string.
string text = System.IO.File.ReadAllText(@args[0]);
...
...
rest of method here
...
...
}如果从命令提示符运行,以下代码应将第一个参数打印到控制台:
class Program
{
static void Main(string[] args)
{
if(args.Length > 0)
Console.WriteLine(args[0]);
}
}
- 在VisualStudio中构建应用程序
- 右键单击解决方案资源管理器中的项目,然后选择“在文件资源管理器中打开文件夹”
- 浏览到bin/Debug或bin/Release文件夹或您正在使用的任何生成配置
- 将.exe的路径粘贴到命令提示符中并运行它:
谢谢大家帮我解决这个问题。问题源于我试图运行的文件。当我想从命令提示符运行exe时,我通过visual studio发布了一个应用程序
这里的第一次体验很棒;) 为什么您的应用程序是扩展应用程序?您没有遗漏任何东西(除了潜在的权限问题)运行该应用程序时会发生什么?我收到以下消息“未处理的异常:System.IndexOutOfRangeException:索引超出了数组的边界。在ConsoleApplication2.TestProgram.Main(String[]args)”我假设这是因为没有任何参数真正传递到应用程序中。需要注意的是,这是我第一次使用C#或Visual Studio,所以我对所有事情都有点熟悉。请显示访问器代码,然后代码的相关部分应如下所示,公共静态void Main(string[]args){System.Console.WriteLine(args[0]);//将文件作为一个字符串读取。字符串text=System.IO.file.ReadAllText(@args[0])。。。。