gpt4 book ai didi

c# - 想要将 WinForm 应用程序的数据文件放在文件夹中并在代码中获取其路径

转载 作者:行者123 更新时间:2023-11-30 17:15:32 26 4
gpt4 key购买 nike

我想使用一个数据文件并从 WinForms 应用程序中读取它。如果我使用 Application.ExecutablePath 或 Application.StartupPath 之类的方法,它们会引用文件夹 ..\bin\debug,这在非 VS 托管应用程序中是不同的。我想使用根文件夹之外的文件夹并获取对它的引用,无论我是否处于 Debug模式,即,它始终正常工作。

有什么好的方法吗?我不喜欢使用嵌入式资源文件,也不使用硬编码的完整路径。它必须是应用程序根文件夹的相对路径。

类似于 ASP.NET 中的 ~/App_Data

添加:

我想使用“某些路径”之外的相对路径。 “某些路径”是我正在寻找的,无论我是在 VS 中处于 Debug模式、非 Debug模式还是应用程序已部署。就像 ASP.NET 的“~”一样。它不关心站点在哪里或者你是否在 VS 中。我不想在“调试”文件夹下创建文件夹。无论如何,它都是同一个文件夹。 “一些文件夹”也在 VS 的应用程序文件夹之外,因为应用程序将被压缩以在不部署或发布的情况下使用。

最佳答案

尝试访问当前执行程序集的位置:

string path = System.Reflection.Assembly.GetExecutingAssembly().Location
string fullFilePath = Path.Combine(path, "myfile");
..do something with your data file.

这为您提供了执行 EXE/DLL 程序集的目录。然后你可以为你的数据文件创建一个子目录。这有时不适用于单元测试框架。

关于c# - 想要将 WinForm 应用程序的数据文件放在文件夹中并在代码中获取其路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7950994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com