【发布时间】:2013-04-08 00:01:17
【问题描述】:
当我将参数传递给Main 函数static void Main(string[] args) 时,我的应用程序的默认位置将更改为args[0] 包含的任何内容。
例如,我有一个文件“test.txt”与应用程序 exe 位于同一文件夹中。如果我打电话给File.Open("test.txt", FileMode.Open);,打开文件不会有任何问题。现在,如果我已将参数传递给Main,则调用File.Open("test.txt", FileMode.Open); 将在args[0] 的位置而不是从exe 位置查找文件“test.txt”。
假设我的 exe 位于C:\users\application.exe 并且args[0] 的字符串是D:\files\music,File.Open("test.txt", FileMode.Open); 行将尝试打开文件D:\files\music\test.txt 而不是C:\users\test.txt。
如何解决这个问题,以便我仍然可以访问文件“test.txt”?
【问题讨论】:
标签: c# command-line-arguments main