C# 如何获取应用程序目录中复制文件的路径
我在应用程序的资源中添加了一些文件。 这些文件的“复制到输出目录”属性设置为“始终复制”,因此这些文件将显示在ApplicationDirectory/Resources目录中 我想要的是访问那些文件。当然,我可以使用以下代码:C# 如何获取应用程序目录中复制文件的路径,c#,resources,C#,Resources,我在应用程序的资源中添加了一些文件。 这些文件的“复制到输出目录”属性设置为“始终复制”,因此这些文件将显示在ApplicationDirectory/Resources目录中 我想要的是访问那些文件。当然,我可以使用以下代码: Environment.CurrentDirectory + Path.DirectorySeparatorChar + "Resources\ResourceFileName.xslt"; 这里的问题是,如果要重命名文件或\Resources目录,则必须修改所
Environment.CurrentDirectory
+ Path.DirectorySeparatorChar
+ "Resources\ResourceFileName.xslt";
这里的问题是,如果要重命名文件或\Resources目录,则必须修改所有字符串
编辑:例如,我的资源中有一个MasterData.xslt文件。生成后,它将被放置在_ApplicationFolder\Resources\目录中。该文件的路径是ApplicationFolder\Resources\MasterData.xslt。在我的代码中,我可以使用
Resources.MasterData
有没有办法获取文件路径(ApplicationFolder\Resources\MasterData.xslt)而不是其内容?当您在构建过程中将文件放在那里时,应该将位置视为“神奇”常量 只需使用
常量字符串resFolder=“Resources”代码>某个地方,这样您就有了一个定义点
OT:并使用System.IO.Path.Combine()
构造文件路径:
string myPath = Path.Combine(Environment.CurrentDirectory,
resFolder, "ResourceFileName.xslt");
如果资源是应用程序运行时目录下的子目录,则可以执行以下操作:
string fileName =
System.Reflection.Assembly.GetExecutingAssembly().Location +
Path.DirectorySeparatorChar +
"Resources" +
Path.DirectorySeparatorChar +
"ResourceFileName.xslt";
请注意,我两次使用Path.directoryseportorchar,而不是“\”无法回答问题。它作为一个常数从天上掉下来。