gpt4 book ai didi

c# - Environment.CurrentDirectory 与 System.IO.Directory.GetCurrentDirectory

转载 作者:太空狗 更新时间:2023-10-29 19:55:54 26 4
gpt4 key购买 nike

我正在编写一个 .Net WinForms,并不断在 DEBUG 和 RELEASE 配置之间切换,并且有一些文件我需要任一配置才能访问。

我想做的是将文件放在 BIN 文件夹的一个公共(public)目录中,这样它看起来像这样:

MyProject/Bin/CommonFiles
MyProject/Bin/Debug
MyProject/Bin/Release

我正在考虑使用以下方式访问文件:

System.IO.Directory.GetParent(System.IO.Directory.GetCurrentDirectory).FullName

我的问题是这是否危险,因为根据我的阅读,System.IO.Directory.GetCurrentDirectory 可能会因用户选择一个新的当前目录而改变,比如说,一个打开的目录文件对话框。

我是否应该使用类似以下内容的内容:

System.IO.Directory.GetParent(Environment.CurrentDirectory).FullName

OR 是否有更好的方法进入 /Bin 文件夹,以便我可以从那里或通常接受的方式/位置移动以存储程序通常的文件需要更轻松地访问和引用它(也许可以与任何类型的应用程序一起使用而不仅仅是 WinForms)?

最佳答案

您可以使用 System.Reflection.Assembly.GetExecutingAssembly().Location 获取应用程序的 .exe 位置。

string exePath = System.Reflection.Assembly.GetExecutingAssembly().Location;
string exeDir = System.IO.Path.GetDirectoryName(exePath);
DirectoryInfo binDir = System.IO.Directory.GetParent(exeDir);

关于c# - Environment.CurrentDirectory 与 System.IO.Directory.GetCurrentDirectory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19981504/

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