private IEnumerable <TradeDay> ReadStockData() { using (StreamReader sr = new StreamReader(tradeFile)) { string line = null; // Move past headings sr.ReadLine(); while ((line = sr.ReadLine()) != null) { TradeDay day = ParseTradeEntry(line); yield return(day); } } }
private static TradeDay ParseTradeEntry(string entry) { string[] items = entry.Split(','); TradeDay ret = new TradeDay(); ret.Date = DateTime.Parse(items[0]); ret.Open = double.Parse(items[1], NumberFormatInfo.InvariantInfo); ret.High = double.Parse(items[2], NumberFormatInfo.InvariantInfo); ret.Low = double.Parse(items[3], NumberFormatInfo.InvariantInfo); ret.Close = double.Parse(items[4], NumberFormatInfo.InvariantInfo); ret.Volume = long.Parse(items[5], NumberFormatInfo.InvariantInfo); ret.AdjClose = double.Parse(items[6], NumberFormatInfo.InvariantInfo); return(ret); }