访问资源

时间:2013-07-18 14:22:39

标签: c# resources

我是C#项目,它有Resources文件夹。此文件夹包含一些txt文件。这个文件有各种文件名。

我从任何来源获取文件名作为字符串变量。例如,我在Resources文件夹中有fileName字符串变量和test.txt文件:

string fileName = "test.txt";

当我想如下所示访问此文件时,我可以:

WpfApplication.Properties.test.txt;

但是,当我想通过此代码访问它时,我不能。

WpfApplication.Properties.fileName;

我想使用fileName字符串变量并访问此文本文件。

我该怎么做才能访问它?

提前致谢。

修改: 我改变了这个问题的形式: 我为字符串变量分配了任何文本文件名。例如;我有a.txt,b.txt,c.txt,d.txt等。我通过一些循环把这个文件名作为字符串变量(fileName)。所以,我拿了“c.txt”字符串。而且,我可以通过以下代码访问此文件:

textName = "c.txt";
fileName = "../../Resources\\" + textName;

但是,当我将此项目构建为安装项目并将.exe文件安装到任何PC时,应用程序的文件夹中没有“Resources”文件夹。所以,

  

../../资源\

不可用。

如何从exe文件的文件夹中访问Resources文件夹?

2 个答案:

答案 0 :(得分:0)

您需要为具有Resource File / .resx扩展名的项目添加.aspx.resx。然后,您将能够双击此文件并编辑所需的资源/资源字符串。要执行此操作右键单击解决方案资源管理器中的项目节点> 添加> 新商品> 资源文件。我们假设您已将名为ResourceStrings.resx的文件添加到Properties文件夹,并添加了一个键名为MyResourceString的资源字符串,以访问您将要执行的这些字符串

string s = Properties.ResourceStrings.MyResourceString;

我希望这会有所帮助。

答案 1 :(得分:0)

我强烈建议您查看:http://msdn.microsoft.com/en-us/library/aa970494.aspx

如果您的文本文件将构建操作设置为资源,则可以在以下代码中找到它们: (假设文件名是fileName,它位于Resources文件夹中)

 Uri uri = new Uri(string.Format("Resources/{0}", fileName), UriKind.Relative);
 System.Windows.Resources.StreamResourceInfo info = Application.GetResourceStream(uri);

然后您可以访问info.Stream来访问您的文件。