public override bool ConvertFile(IBaseFile file) { bool retVal = false; try { XDocument outputDoc = new XDocument( new XElement("file", new XElement("ALL_INSTANCES"), new XElement("ROWS"))); XElement outputInstances = outputDoc.Element("file").Element("ALL_INSTANCES"); XElement outputRows = outputDoc.Element("file").Element("ROWS"); uint ID = 1; foreach (Code code in file) { outputRows.Add(new XElement("row", new XElement("code", code.Name), new XElement("R", code.R), new XElement("G", code.G), new XElement("B", code.B))); foreach (Instance instance in code) { outputInstances.Add(new XElement("instance", new XElement("ID", ID.ToString()), new XElement("start", instance.Start.ToString("0.00")), new XElement("end", instance.End.ToString("0.00")), new XElement("code", instance.Code))); ++ID; } } outputDoc.Save(theFilePath); retVal = true; } catch { } return(retVal); }
public override bool ConvertFile(IBaseFile file) { bool retVal = false; try { XDocument outputDoc = new XDocument( new XElement("file", new XElement("ALL_INSTANCES"), new XElement("ROWS"))); XElement outputInstances = outputDoc.Element("file").Element("ALL_INSTANCES"); XElement outputRows = outputDoc.Element("file").Element("ROWS"); uint ID = 1; foreach (Code code in file) { outputRows.Add(new XElement("row", new XElement("code", code.Name), new XElement("R", code.R), new XElement("G", code.G), new XElement("B", code.B))); foreach (Instance instance in code) { outputInstances.Add(new XElement("instance", new XElement("ID", ID.ToString()), new XElement("start", instance.Start.ToString("0.00")), new XElement("end", instance.End.ToString("0.00")), new XElement("code", instance.Code))); ++ID; } } outputDoc.Save(theFilePath); retVal = true; } catch { } return retVal; }
static void ProcessFile(FileTypes.Files fileType, string fileName) { try { IFileParser fileParser = new FileParser(); IBaseFile baseFileType = null; IBaseFileProcessor basefileProcessor = null; switch (fileType) { case FileTypes.Files.LPF: baseFileType = new LPFileType(); basefileProcessor = new LPFFileProcessor(); break; case FileTypes.Files.TOU: baseFileType = new TOUFileType(); basefileProcessor = new TOUFileProcessor(); break; } if (!System.IO.File.Exists(fileName)) { Console.WriteLine("File does not exist"); return; } System.IO.FileInfo finfo = new System.IO.FileInfo(fileName); if (finfo.Extension != ".csv") { Console.WriteLine("Invalid File"); return; } var data = fileParser.ParseFile(fileName, baseFileType); var median = basefileProcessor.CalcMedian(data.ToArray()); var outliers = basefileProcessor?.GetOutliers(data.ToArray(), 20, median); PublishData pub = new PublishData(); pub.DisplayData(outliers, finfo.Name, median); } catch (Exception e) { Console.WriteLine(e); throw; } }
public IEnumerable <IBaseFile> ParseFile(string fileName, IBaseFile fileInstance) { try { _fileName = fileName; _fileInstance = fileInstance; if (string.IsNullOrEmpty(fileName)) { return(null); } if (!System.IO.File.Exists(fileName)) { return(null); } return(Read()); } catch (Exception e) { Console.WriteLine(e); throw; } }
public abstract bool ConvertFile(IBaseFile file);
public override bool ConvertFile(IBaseFile file) { bool retVal = false; try { using (StreamWriter sw = new StreamWriter(theFilePath)) { Random random = new Random(); double randID = random.NextDouble(); while (randID < 10000000000000000000) { randID *= 10; } sw.Write(String.Format(HEADER_1, randID)); String filename1 = "file://localhost/Users/chasepettit/Desktop"; String filename2 = "file://localhost/Users/chasepettit/test-updates.TLcodes"; sw.Write(HEADER_2A); foreach (char c in filename1) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03" + "\r" + HEADER_2B); sw.Write(HEADER_2C); foreach (char c in filename2) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03" + "\r" + HEADER_2D); sw.Write(HEADER_2E + "0\t\r" + HEADER_2F); sw.Write(HEADER_3); int totalInstances = 0; foreach (Code code in file) { totalInstances += code.InstanceCount; } sw.Write(HEADER_4, file.CodeCount.ToString(), Path.GetFileName(theFilePath), totalInstances.ToString(), ""); sw.Write(HEADER_5); StringBuilder temp = new StringBuilder(); for (int i = 0; i < file.MaxInstances; i++) { temp.Append("start:" + (i + 1).ToString() + "\tend:" + (i + 1).ToString() + "\t"); } sw.Write(TABLE_HEADER, temp.ToString()); foreach (Code code in file) { sw.Write(code.Name + "\t19\t" + code.InstanceCount + "\t"); foreach (Instance instance in code) { sw.Write(instance.Start.ToString("0.0000000000") + "\t" + instance.End.ToString("0.0000000000") + "\t"); } sw.Write("\r"); } sw.Write("\r" + TABLE_HEADER_2); foreach (Code code in file) { sw.Write(code.Name + "\t\x3f\x3f" + code.InstanceCount + "\t\r"); for (int i = 0; i < code.InstanceCount; i++) { sw.Write("\t" + (i + 1).ToString() + "\t0\t\r"); } } sw.Write(TABLE_HEADER_3); foreach (Code code in file) { sw.Write(code.R + "\t" + code.G + "\t" + code.B + "\r"); } sw.Write(TABLE_HEADER_4); foreach (Code code in file) { for (int i = 0; i < code.InstanceCount; i++) { sw.Write("x\t"); } sw.Write("\r"); } sw.Write(TABLE_FOOTER_4); sw.Write("TL ID:\r" + String.Format("{0:0}", randID) + "\r\r"); sw.Write(TABLE_FOOTER_5); sw.Write("<row names CF>\r"); int j = 1; foreach (Code code in file) { sw.Write(j.ToString() + "\t\x3f\x3f"); ++j; foreach (char c in code.Name) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03\r"); } sw.Write("</row names CF>\r\r"); sw.Write(TABLE_FOOTER_6); sw.Write("<UNIQUE ROW IDs>\r"); foreach (Code code in file) { double rowID = random.NextDouble(); while (rowID < 10000000000000000000) { rowID *= 10; } sw.Write(String.Format("{0:0}\r", rowID)); } sw.Write("\r\r"); sw.Write(TABLE_FOOTER_7); } retVal = true; } catch { } return(retVal); }
public override bool ConvertFile(IBaseFile file) { bool retVal = false; try { using (StreamWriter sw = new StreamWriter(theFilePath)) { Random random = new Random(); double randID = random.NextDouble(); while (randID < 10000000000000000000) { randID *= 10; } sw.Write(String.Format(HEADER_1, randID)); String filename1 = "file://localhost/Users/chasepettit/Desktop"; String filename2 = "file://localhost/Users/chasepettit/test-updates.TLcodes"; sw.Write(HEADER_2A); foreach (char c in filename1) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03" + "\r" + HEADER_2B); sw.Write(HEADER_2C); foreach (char c in filename2) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03" + "\r" + HEADER_2D); sw.Write(HEADER_2E + "0\t\r" + HEADER_2F); sw.Write(HEADER_3); int totalInstances = 0; foreach (Code code in file) { totalInstances += code.InstanceCount; } sw.Write(HEADER_4, file.CodeCount.ToString(), Path.GetFileName(theFilePath), totalInstances.ToString(), ""); sw.Write(HEADER_5); StringBuilder temp = new StringBuilder(); for (int i = 0; i < file.MaxInstances; i++) { temp.Append("start:" + (i + 1).ToString() + "\tend:" + (i + 1).ToString() + "\t"); } sw.Write(TABLE_HEADER, temp.ToString()); foreach (Code code in file) { sw.Write(code.Name + "\t19\t" + code.InstanceCount + "\t"); foreach (Instance instance in code) { sw.Write(instance.Start.ToString("0.0000000000") + "\t" + instance.End.ToString("0.0000000000") + "\t"); } sw.Write("\r"); } sw.Write("\r" + TABLE_HEADER_2); foreach (Code code in file) { sw.Write(code.Name + "\t\x3f\x3f" + code.InstanceCount + "\t\r"); for (int i = 0; i < code.InstanceCount; i++) { sw.Write("\t" + (i+1).ToString() + "\t0\t\r"); } } sw.Write(TABLE_HEADER_3); foreach (Code code in file) { sw.Write(code.R + "\t" + code.G + "\t" + code.B + "\r"); } sw.Write(TABLE_HEADER_4); foreach (Code code in file) { for (int i = 0; i < code.InstanceCount; i++) { sw.Write("x\t"); } sw.Write("\r"); } sw.Write(TABLE_FOOTER_4); sw.Write("TL ID:\r" + String.Format("{0:0}",randID) + "\r\r"); sw.Write(TABLE_FOOTER_5); sw.Write("<row names CF>\r"); int j = 1; foreach (Code code in file) { sw.Write(j.ToString() + "\t\x3f\x3f"); ++j; foreach (char c in code.Name) { sw.Write(c); sw.Write("\x00"); } sw.Write("\x03\r"); } sw.Write("</row names CF>\r\r"); sw.Write(TABLE_FOOTER_6); sw.Write("<UNIQUE ROW IDs>\r"); foreach (Code code in file) { double rowID = random.NextDouble(); while (rowID < 10000000000000000000) { rowID *= 10; } sw.Write(String.Format("{0:0}\r", rowID)); } sw.Write("\r\r"); sw.Write(TABLE_FOOTER_7); } retVal = true; } catch { } return retVal; }