2013-07-24 32 views
13

Tôi có rất nhiều tệp txt trong thư mục Tài nguyên. Một trong số đó là corner.txt. Tôi có thể truy cập tệp này qua đoạn mã này:Tải Tài nguyên bằng chuỗi

Properties.Resources.corner 

Tôi giữ tên tệp trong biến chuỗi. Ví dụ:

string fileName = "corner.txt"; 

tôi muốn truy cập tập tin này qua:

Properties.Resources.fileName 

Đây có phải là có thể? Tôi có thể truy cập bằng cách nào?

+0

Hoàn toàn không rõ bạn đang hỏi gì. 'FileName' ở đâu? Nó là một tài sản được tạo ra? Có phải đó là biến cục bộ mà bạn đã khai báo trong một số lớp học bị hủy bỏ hoàn toàn không? Gì? –

+2

Nhân bản: http://stackoverflow.com/a/3314213/2524304 – FSou1

+0

Đặt văn bản in đậm không làm rõ những gì bạn đang yêu cầu. Tên tệp có phải là đường dẫn đầy đủ hay chỉ tên tệp? Hay đó là một lớp mà bạn muốn truy cập? – Abbas

Trả lời

36

tôi giải quyết vấn đề đoạn mã này:

string st = Properties.Resources.ResourceManager.GetString(tableName); 

Vì vậy, tôi không sử dụng tên tệp, tôi sử dụng chuỗi của tệp txt. Điều này rất hữu ích cho tôi.

Thanks a lot.

+0

Tôi không hiểu. Bạn có thể cung cấp thêm một số chi tiết, xin vui lòng – Catbuilts

9

Bạn có thể sử dụng Reflection như thế:

var type = typeof(Properties.Resources); 
var property = type.GetProperty(fileName, BindingFlags.Static| BindingFlags.NonPublic|BindingFlags.Public); 
var value = property.GetValue(null, null); 

hoặc sử dụng ResourceManager như thế:

value = Properties.Resources.ResourceManager.GetObject(fileName, Properties.Resources.Culture); 
Các vấn đề liên quan