// ==================================================================== // save to a file // if filepath is not specified, read/save in AppData file // ==================================================================== public void SaveToFile(String filepath = null) { // --------------------------------------------------------------- // if file path not specified, set to last read file // --------------------------------------------------------------- if (filepath == null && DirName != null && FileName != null) { filepath = DirName + "\\" + FileName; } // --------------------------------------------------------------- // just in case filepath doesn't exist, reset path info // --------------------------------------------------------------- _DirName = null; _FileName = null; // --------------------------------------------------------------- // get filepath name (throws exception if it doesn't exist) // --------------------------------------------------------------- filepath = BudgetFiles.VerifyWriteToFileName(filepath, DefaultFileName); // --------------------------------------------------------------- // save as XML // --------------------------------------------------------------- _WriteXMLFile(filepath); // ---------------------------------------------------------------- // save filename info for later use // ---------------------------------------------------------------- _DirName = Path.GetDirectoryName(filepath); _FileName = Path.GetFileName(filepath); }
// ==================================================================== // save to a file // ==================================================================== public void SaveToFile(String filepath) { // --------------------------------------------------------------- // just in case filepath doesn't exist, reset path info // --------------------------------------------------------------- _DirName = null; _FileName = null; // --------------------------------------------------------------- // get filepath name (throws exception if it doesn't exist) // --------------------------------------------------------------- filepath = BudgetFiles.VerifyWriteToFileName(filepath, ""); String path = Path.GetDirectoryName(Path.GetFullPath(filepath)); String file = Path.GetFileNameWithoutExtension(filepath); String ext = Path.GetExtension(filepath); // --------------------------------------------------------------- // construct file names for expenses and categories // --------------------------------------------------------------- String expensepath = path + "\\" + file + "_expenses" + ".exps"; String categorypath = path + "\\" + file + "_categories" + ".cats"; // --------------------------------------------------------------- // save the expenses and budgets into their own files // --------------------------------------------------------------- expenses.SaveToFile(expensepath); categories.SaveToFile(categorypath); // --------------------------------------------------------------- // save filenames of expenses and categories to budget file // --------------------------------------------------------------- string[] files = { Path.GetFileName(categorypath), Path.GetFileName(expensepath) }; System.IO.File.WriteAllLines(filepath, files); // ---------------------------------------------------------------- // save filename info for later use // ---------------------------------------------------------------- _DirName = path; _FileName = Path.GetFileName(filepath); }