static void createDirectoryIfNotFound(yahooData type) { if (!Directory.Exists(localPath + type.ToString())) { Directory.CreateDirectory(localPath + type.ToString()); } }
/// <summary>データを保存する。</summary> static void save(IEnumerable <SerializablePrices> src, yahooData type, object ticker) { string fileName = getFilePath(type, ticker); createDirectoryIfNotFound(type); var seri = new XmlSerializer(typeof(SerializablePrices[])); using (FileStream fs = new FileStream(fileName, FileMode.Create)) { seri.Serialize(fs, src.ToArray()); } StockPriceManager.SetMessage(DataSource.Yahoo, "保存完了"); }
/// <summary>ローカルに保存されているデータを取得する。</summary> static IEnumerable <SerializablePrices> getLocalData(yahooData type, object ticker) { string fileName = getFilePath(type, ticker); if (!File.Exists(fileName)) { return(new SerializablePrices[0]); } var deseri = new XmlSerializer(typeof(SerializablePrices[])); using (FileStream fs = new FileStream(fileName, FileMode.Open)) { SerializablePrices[] src; src = deseri.Deserialize(fs) as SerializablePrices[]; StockPriceManager.SetMessage(DataSource.Yahoo, "読み込み完了"); return(src); } }
static string getFilePath(yahooData type, object ticker) { return(localPath + type.ToString() + Path.DirectorySeparatorChar + ticker.ToString() + @".xml"); }