2013-07-18 214 views
0

我有C#項目,它有Resources文件夾。這個文件夾有一些txt文件。這些文件有各種文件名。訪問資源

我正在從任何源文件名作爲字符串變量。例如,我有文件名字符串變量和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文件夾?

回答

0

您需要將Resource File添加到您的項目中,其擴展名爲.resx/.aspx.resx。然後,您將能夠雙擊該文件並編輯所需的資源/資源字符串。要做到這一點右鍵點擊解決方案資源管理器中的項目節點>添加>新項目>資源文件。讓我們假設你已經添加了一個名爲ResourceStrings.resx文件到文件夾Properties和新增的資源字符串鍵名MyResourceString,訪問這些字符串,你會做

string s = Properties.ResourceStrings.MyResourceString; 

我希望這有助於。

0

我強烈建議你考慮看看:http://msdn.microsoft.com/en-us/library/aa970494.aspx

如果您的文本文件已經生成操作設置爲資源,你可以在如下代碼找到他們: (假設文件名是文件名及其位於資源文件夾)

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

然後你就可以訪問info.Stream以訪問您的文件。