private static LowranceLogData ReadFile(string filename, bool verbose) { var stopWatch = new Stopwatch(); if (verbose) { Console.WriteLine("Reads file: {0}", filename); } LowranceLogData data; try { using (var stream = new FileStream(filename, FileMode.Open, FileAccess.Read)) { stopWatch.Start(); data = LowranceLogData.ReadFromStream(stream); stopWatch.Stop(); } } catch (Exception ex) { Console.WriteLine(ex); return(null); } if (verbose) { Console.WriteLine("Read time: " + stopWatch.Elapsed + "\n"); stopWatch.Reset(); LowranceLogDataInfo(data); } return(data); }
public void CsvLogDataReadWriteTest() { var testDir = TestContext.CurrentContext.TestDirectory; var solutionDir = Path.GetDirectoryName(Path.GetDirectoryName(testDir)); var csvWriteData = new CsvLogData(); var csvReadData = new CsvLogData(); //takes csv data from demo .sl2 using (var fromSl2Stream = new FileStream(solutionDir + @"\input.sl2", FileMode.Open, FileAccess.Read)) { csvWriteData.Points = LowranceLogData.ReadFromStream(fromSl2Stream).Frames .Select(frame => new CsvLogEntry(frame)); } //write it with csv format using (var toStream = new FileStream(testDir + @"\testCSVData.csv", FileMode.Create, FileAccess.Write)) { CsvLogData.WriteToStream(toStream, csvWriteData); } using (var fromCSVStream = new FileStream(testDir + @"\testCSVData.csv", FileMode.Open, FileAccess.Read)) { csvReadData = CsvLogData.ReadFromStream(fromCSVStream); } var writeDepthPoints = csvWriteData.Points as IDepthPointSource[] ?? csvWriteData.Points.ToArray(); Assert.IsTrue(writeDepthPoints.Count() == csvReadData.Points.Count()); foreach (var point in writeDepthPoints) { Assert.IsTrue(csvReadData.Points.Contains(point)); } }