正确读取C#格式的CSV文件以进行打印预览

正确读取C#格式的CSV文件以进行打印预览,c#,winforms,csv,reader,C#,Winforms,Csv,Reader,首先,我使用csv文件将数据从DataGridView存储到其中。现在,我正在尝试显示一个带有csv文件中数据的打印预览。我用这个: public void ReadDocument() { string docName = @"printDataGridView.csv"; string docPath = Directory.GetCurrentDirectory(); form1.printDocument1.Document

首先,我使用csv文件将数据从DataGridView存储到其中。现在,我正在尝试显示一个带有csv文件中数据的打印预览。我用这个:

    public void ReadDocument()
    {
        string docName = @"printDataGridView.csv";
        string docPath = Directory.GetCurrentDirectory();
        form1.printDocument1.DocumentName = docName;

        using (FileStream stream = new FileStream(docPath + @"\" + docName, FileMode.Open))
        using (StreamReader reader = new StreamReader(stream))
        {
            form1.documentContents = reader.ReadToEnd();
        }
        form1.stringToPrint = form1.documentContents;
    }
我的问题是,我得到了一个打印预览,其中的值仅以分号分隔。我需要的是显示数据,就像它显示在CSV文件-表格和“干净”。一列的标题和下面的值,然后是第二列,依此类推。。。
这有可能吗

您是否尝试在编辑器中打开csv文件?以分号分隔的值是文件的基本格式。当您将数据视为字符串时,您将得到该字符串。您需要将数据解析为数据结构,并将其置于某种网格控制中以实现所需的功能。您所说的“分号”是指逗号吗?此外,如果CSV文件看起来是表格格式且“干净”的,那么您可能看的不是实际的文件内容(如在文本编辑器中),而是类似于电子表格的表示形式(如在Excel中)。不要使用CSV。最好使用DataTable作为DataGrid视图的数据源。然后,您可以使用ReadXml()或WriteXml()将数据表读/写到文件中。否则使用制表符分隔而不是CSV。如何使用打印预览将数据表的值读取为字符串格式?我的意思是,我能把它传成一个字符串或别的什么吗?好的,非常感谢!我将在XML读写器中尝试这一点。用制表符分隔是什么意思?