Vb.net 文本字段解析器的奇怪问题
在VB.NET中使用“Microsoft.VisualBasic.FileIO.TextFieldParser”时,我遇到了一个奇怪的问题。我正在创建一个使用“,*”作为分隔符的CSV文件,然后尝试将该文件导出到EXCEL电子表格中。程序完美地创建了文件,但当我试图从文件中提取每个条目并将它们放入Excel表时,一些条目被拆分了。例如,我的一行中的第一个条目之一是没有引号的“H WIRE*30(SHDR-30V&SHDR-30V)160mm”。当我使用TextFieldParser获取条目并将其导出到EXCEL中时,160mm从条目中删除,并添加到下面的行中。参见图 这里是我使用的CSV的链接 这是代码。(我删除了本文代码的excel部分。)我在其中放了一个消息框,显示解析器正在提取的每个条目。当它到达“H线*30(SHDR-30V和SHDR-30V)160mm”条目时,它将“H线*30(SHDR-30V和SHDR-30V)”读取为其自己的行,之后没有条目,然后将“160mm”读取为新行,其中应包含所有剩余信息。(很抱歉,这让xD感到困惑) 我就是搞不懂它为什么这么做?CSV看起来很好,所有其他行都可以完美地读取并导出到excel中。但这场争吵每次都是一团糟 提前感谢您的帮助 谢谢你这么多闲心Vb.net 文本字段解析器的奇怪问题,vb.net,excel,csv,Vb.net,Excel,Csv,在VB.NET中使用“Microsoft.VisualBasic.FileIO.TextFieldParser”时,我遇到了一个奇怪的问题。我正在创建一个使用“,*”作为分隔符的CSV文件,然后尝试将该文件导出到EXCEL电子表格中。程序完美地创建了文件,但当我试图从文件中提取每个条目并将它们放入Excel表时,一些条目被拆分了。例如,我的一行中的第一个条目之一是没有引号的“H WIRE*30(SHDR-30V&SHDR-30V)160mm”。当我使用TextFieldParser获取条目并将其
Dim MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\TEST CSV.txt")
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(",*")
Dim currentRow As String()
While Not MyReader.EndOfData
Try
currentRow = MyReader.ReadFields()
Dim currentField As String
For Each currentField In currentRow
MessageBox.Show(currentField)
Next
该行中存在意外换行。我只需下载您的文本文件,在记事本++中打开它,然后打开“查看-->显示符号-->显示行尾”功能: