解决方案文件夹中的本地文件路径问题

3

我创建了一个WPF项目,并在解决方案中添加了一个名为"ResFiles"的文件夹。 在这个文件夹里,我放置了几个XML文件。 在代码中,为了访问这些文件,我使用了下面描述的相对路径。

using (StreamWriter writer = new StreamWriter(@"../../ResFiles/xyz.xml"))
        {
            serializer.Serialize(writer, mydata, ns);
        }

这个很正常。但是当我为我的应用程序创建安装包时,文件夹结构会发生变化,所以给定的路径就不起作用了。这将导致文件不存在异常。如何解决这个路径问题呢?


总是使用Environment.CurrentDirectory作为基础路径如何? - smoksnes
在我的解决方案中,我有MySolution->MyProject->ResFiles->xyz.xml路径。当我安装应用程序时,路径变成了MyProject->ResFiles->xyz.xml。 - Niranjan NT
2个回答

2

你可以尝试这个

 var f = File.ReadAllText(System.IO.Path.GetDirectoryName(System.AppDomain.CurrentDomain.BaseDirectory) + @"/Files/file.txt");

同时,您还需要改变生成操作和复制到输出目录输入图像说明


0

你可以尝试这些

Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)

或者

Path.Combine(AppDomain.CurrentDomain.BaseDirectory,@"ResFiles\xyz.xml")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接