在其他系统中使用程序时,必须更改C#文件名

时间:2012-09-11 13:44:29

标签: c#

我在C#编写了一个简单的应用程序,它使用的是XML文件。当程序加载时,它必须从文件中获取值并将它们加载到arraylist中。问题是当我将程序移动到另一台PC时,我必须手动更改文件位置。即使在其他PC中运行程序,如何才能使文件名不被更改。

3 个答案:

答案 0 :(得分:2)

将XML文件复制到程序所在的同一文件夹或子文件夹中,以便始终可以找到它,例如:

Path.GetDirectoryName(Application.ExecutablePath);

答案 1 :(得分:1)

有几种方法可以解决这个问题。一种是将文件名作为命令行参数传递。例如:

public static void main(string[] args)
{
    // Use the first argument on the command line
    string file = args[0];
}

另一种方法是将其包含在app.config文件中。请参阅https://codereview.stackexchange.com/questions/186/getting-setting-default-values-from-my-app-config以获取一个好例子。

答案 2 :(得分:1)

您可以将文件存储在装配位置或某个公共位置

string myfile = System.IO.Path.Combine(Assembly.GetExecutingAssembly().Location,"your file name");