tidstagning/Tidstagning/ResultList.cs
Jens True 8d10da3cc6
All checks were successful
continuous-integration/drone/push Build is passing
Code formatting. Remove traces of static analysis in drone build
2021-07-03 23:12:20 +02:00

80 lines
2.6 KiB
C#

using System;
namespace Tidstagning
{
class ResultList
{
System.IO.StreamWriter filehandle;
System.IO.StreamWriter filehandle2;
Tidstagning.Form1 parentForm;
string racenumber;
public ResultList(string filename, Tidstagning.Form1 log_object)
{
filename = MakeSafeFilename(filename, '_');
filehandle = new System.IO.StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/Tidstagning/" + filename + "_" + DateTime.Now.ToString(" dd-MM-yyyy HH-mm-ss") + ".txt");
filehandle2 = new System.IO.StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/Tidstagning/" + filename + "_" + DateTime.Now.ToString(" dd-MM-yyyy HH-mm-ss") + ".csv");
parentForm = log_object;
}
private string MakeSafeFilename(string filename, char replaceChar)
{
foreach (char c in System.IO.Path.GetInvalidFileNameChars())
{
filename = filename.Replace(c, replaceChar);
}
return filename;
}
public void WriteHeader(string header)
{
this.racenumber = header;
Write("----------------------------");
Write(header);
Write("Løb startet den: " + DateTime.Now.ToString());
Write("----------------------------");
WriteCSV("RaceNo,SailNo,Finish,Code,");
}
public void WriteFooter()
{
Write("----------------------------");
Write("Løb afsluttet den: " + DateTime.Now.ToString());
Write("----------------------------");
}
public void WriteComplete(Entry Boat)
{
Write("Fuldført! - " + Boat.Name + " - " + Boat.Completed_Time.ToString());
WriteCSV(this.racenumber + "," + Boat.SailNumber + "," + Boat.Completed_Time.ToString("HH:mm:ss") + ", ,");
}
public void WriteDNF(Entry Boat)
{
Write("Udgået! - " + Boat.Name + " - " + Boat.Completed_Time.ToString());
WriteCSV(this.racenumber + "," + Boat.SailNumber + "," + "00:00:00,DNC,");
}
public void Write(string textstring)
{
filehandle.WriteLine(textstring);
parentForm.LogAppend(textstring + "\r\n");
filehandle.Flush();
}
public void WriteCSV(string textstring)
{
filehandle2.WriteLine(textstring);
filehandle2.Flush();
}
public void Close()
{
filehandle.Close();
filehandle2.Close();
}
}
}