public static void Export_PowerViewCSV(Args_Export_PowerViewCSV args = null) { if (args == null) { args = new Args_Export_PowerViewCSV(); } var OutputPath = Path.GetFullPath(args.Path); var Exists = File.Exists(OutputPath); // mutex so threaded code doesn't stomp on the output file var Mutex = new System.Threading.Mutex(false, "CSVMutex"); Mutex.WaitOne(); FileMode FileMode; if (args.Append) { FileMode = System.IO.FileMode.Append; } else { FileMode = System.IO.FileMode.Create; Exists = false; } var CSVStream = new FileStream(OutputPath, FileMode, System.IO.FileAccess.Write, FileShare.Read); var CSVWriter = new System.IO.StreamWriter(CSVStream); CSVWriter.AutoFlush = true; var csv = ToCsv <object>(args.Delimiter.ToString(), args.InputObject); CSVWriter.Write(csv); Mutex.ReleaseMutex(); CSVWriter.Dispose(); CSVStream.Dispose(); }
public static void Export_PowerViewCSV(Args_Export_PowerViewCSV args = null) { ExportPowerViewCSV.Export_PowerViewCSV(args); }