2015-05-12 3 views
0

Я видел много примеров, которые показывают, StreamReader принимая arugment «Properties.Resources.someTextFile, и, видимо, они прекрасно работают, однако, в .net 4.5 я все еще получаю:.Чтение Linked текстового файла из ресурсов с StreamReader

Error Message

//while not end of file, read lines of file and split into array 
string myFile = Properties.Resources.data; 

string line; 

StreamReader reader = new StreamReader(myFile); 

while ((line = reader.ReadLine()) != null) 
{ 

    string[] array = line.Split('#'); 

    string tickerSymbol = array[0]; 

    string regPattern = array[1]; 

....

Resources

Итак, что я делаю неправильно?

+0

Посмотрите, поможет ли этот http://stackoverflow.com/a/3314213/49251. – DWright

ответ

1

Получив доступ к ресурсу текстового файла данных через Properties.Resources, результирующая переменная myFile должна содержать содержимое строки файла.

string myFile = Properties.Resources.data; 

var lines = myFile.Split(new[] { Environment.NewLine }, StringSplitOptions.None); 

foreach(var line in lines) 
{ 
    // Process each line... 
} 
+0

Спасибо, @TMS. Представленный вами код обращается к файлу. Тем не менее, я не понимаю, почему аргумент «myFile» генерирует исключение в StreamReader. – daChizzle

+0

Конструктор StreamReader принимает либо путь к файлу (c: \ directory \ filename.ext), либо существующий поток. Поскольку Properties.Resources.data возвращает содержимое файла в виде строки, читатель не знает, что с ним делать. – TMS