C# aspose.cell csv读取,单引号作为文本限定符,逗号作为列分隔符
我正在使用aspose.cell读取csv文件,其中“,”作为列分隔符,单引号(')作为文本限定符,换行符作为行分隔符。如下所示: 例: ‘1’、‘2’、‘3’、‘4’ ‘5’、‘6’、‘7’、‘8’ 从aspose.cell读取时,这些值(考虑到所有文本值不是数字)呈现为 1',2',3',4' 5',6',7',8' 文本限定符为双引号(“)时没有问题 有人能帮我解决这个问题吗?如何使用aspose.cell将带有单引号(')的csv文件作为文本限定符 多谢各位C# aspose.cell csv读取,单引号作为文本限定符,逗号作为列分隔符,c#,.net,csv,aspose-cells,C#,.net,Csv,Aspose Cells,我正在使用aspose.cell读取csv文件,其中“,”作为列分隔符,单引号(')作为文本限定符,换行符作为行分隔符。如下所示: 例: ‘1’、‘2’、‘3’、‘4’ ‘5’、‘6’、‘7’、‘8’ 从aspose.cell读取时,这些值(考虑到所有文本值不是数字)呈现为 1',2',3',4' 5',6',7',8' 文本限定符为双引号(“)时没有问题 有人能帮我解决这个问题吗?如何使用aspose.cell将带有单引号(')的csv文件作为文本限定符 多谢各位 TxtLoadOptions
TxtLoadOptions options = new TxtLoadOptions( LoadFormat.CSV)
options.ConvertNumericData = false;
options.ConvertDateTimeData = false;
options.SeparatorString=",";
// reading aspose license reading, code removed
//stream is ----stream reader
Workbook workBook = new Workbook(stream, options);
workBook.Settings.CheckExcelRestriction = false;
var workSheet = workBook.Worksheets[workBook.Worksheets.ActiveSheetIndex];
Console.WriteLine( workSheet.Cells[0, 0].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 1].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 2].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 3].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 0].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 1].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 2].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 3].Value.ToString());
将TXTLOADPOPTIONS与CSV文件一起使用时可能会出现问题。您可以尝试使用LoadOptions而不是TXTLOADPOPTIONS打开CSV文件,而不会出现任何问题。您可以参考以下代码:
Aspose.Cells.LoadOptions options = new Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.CSV);
options.ConvertNumericData = false;
Workbook workBook = new Workbook("C:\\Data\\open.csv", options);
workBook.Settings.CheckExcelRestriction = false;
var workSheet = workBook.Worksheets[workBook.Worksheets.ActiveSheetIndex];
Console.WriteLine( workSheet.Cells[0, 0].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 1].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 2].Value.ToString());
Console.WriteLine( workSheet.Cells[0, 3].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 0].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 1].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 2].Value.ToString());
Console.WriteLine( workSheet.Cells[1, 3].Value.ToString());
希望这有帮助