Я написал класс parse, пытаясь обработать синтаксический анализ данных из строкового массива в соответствующее значение. Я пытаюсь проверить эту программу, чтобы увидеть, будет ли она распечатывать значение parse.open, и это не так. Он печатает 0 на данный момент (что неточно), пока я не смогу понять, почему он не показывает, что мне нужно.Создание класса Parse для обработки разбора файла, считанного в
while (!r.EndOfStream)
{
ParseFileRead parse = new ParseFileRead();
string line = r.ReadLine();
//Send this to Parse class
string [] values = line.Split(',');
//parse records
Console.WriteLine(values[6]); //This is printing the accurate value for parse.open
ParseFileRead.Parse(values);
Console.WriteLine(parse.open); //This is not printing the accurate value
}
Console.Read();
vWriteFile.Close();
А вот мой ParseFileRead класс:
public class ParseFileRead
{
public int open { get; set; }
public int buy { get; set; }
public int sell { get; set; }
public double settleMM { get; set; }
public string account { get; set; }
public string underlying { get; set; }
public string symbol { get; set; }
public static void Parse(string[] arr)
{
ParseFileRead parse = new ParseFileRead();
parse.account = arr[0];
parse.underlying = arr[12];
parse.symbol = arr[1];
parse.open = Convert.ToInt32(arr[6]);
parse.buy = Convert.ToInt32(arr[7]);
parse.sell = Convert.ToInt32(arr[8]);
parse.settleMM = Convert.ToDouble(arr[10]);
}
}
что делает значения [6] печать? возможно, проблема с преобразованием в целое число. первый оператор печати (тот, который работает) не преобразовывается. – mosca125
вы воссоздаете колесо. Вокруг сидят парсеры. NET даже имеет один: 'TextFieldParser' – Plutonix
Я знаю, что я воссоздаю колесо, но это задание сделать так. @ mosca125, значение 8, когда оно печатает 0, когда я вызываю parse.open –