Forum Discussion

marksmanAK-2024's avatar
marksmanAK-2024
Copper Contributor
Dec 26, 2024

Console App To Write Data To CSV

I am trying to write a pre-defined list of headers to row 1, and List<string> results starting in row 2...my issue is that I get my pre-defined headers written as well as the headers from my List<string> ```cs
void WriteResultsToCSV(List<VwExport> records, string fileName)
{
    DateTime currentDate = DateTime.Now;
    string formattedDate = currentDate.ToString("MM-dd-yyyy");
    
    var filePath = "/Users/owner/Downloads/" + fileName + formattedDate + ".csv"; 
        
    // Define the headers
    var headers = new[]
    {
        "Job Num", 
        "IM barcode Child", 
        "IM barcode Parent", 
        "ZYL_Presort", 
        "Full Name"
    };

    using (var writer = new StreamWriter(filePath, false, Encoding.UTF8))
    using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
    {
        foreach (var header in headers)
        {
            csv.WriteField(header);
        }
        csv.NextRecord();
        
        var trimmedRecords = records.Select(record => new
        {
            JobNum = record.JobNum,
            IMBarcodeDigits = record.ImBarcodeDigits,
            IMBarcodeCharacters = record.ImBarcodeCharacters,
            OELPresort = record.OelPresort,
            FullName = record.FullName
        }).ToList();

        csv.WriteRecords(trimmedRecords);
    }

}```

No RepliesBe the first to reply

Resources