0

我有 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 时,应用程序的文件夹中没有“资源”文件夹。所以,

../../资源\

不可用。

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

4

2 回答 2

0

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

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

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

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

于 2013-07-18T14:37:33.027 回答
0

您需要在Resource File您的项目中添加一个扩展名为.resx/的项目.aspx.resx。然后,您将能够双击此文件并编辑所需的资源/资源字符串。为此,请右键单击解决方案资源管理器中的 Project 节点> Add > New Item > Resource File。让我们假设您已经添加了一个名为ResourceStrings.resxProperties文件夹的文件并添加了一个带有键名的资源字符串MyResourceString,要访问这些字符串,您可以这样做

string s = Properties.ResourceStrings.MyResourceString;

我希望这有帮助。

于 2013-07-18T14:29:29.820 回答