Ну, это даже не нужно компилировать - вы никогда не инициализируете значение settings
. Массивы в .NET имеют фиксированный размер - мне кажется, что вы должны быть List <string []> a вместо:List<string> settings = new List<string>(); using (TextReader reader = File.OpenText(fileName, Encoding.ASCII)) { string line; while ((line = reader.ReadLine()) != null) { settings.Add(line.Split(',')); } } MessageBox.Show(settings[1][0]); // Shows the first part of the second line
using
(Обратите внимание, что это также гарантирует, что файл будет закрыт, даже если будут возникать исключения - вам обязательно нужно узнать об этом using
заявлении. Решение Marc избегает этого, загружая все строки в один вызов, что, очевидно, имеет накладные расходы памяти, но в остальном это хорошо. )