首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Lumenworks CSV分析器提取整行/直线

使用Lumenworks CSV分析器提取整行/直线
EN

Stack Overflow用户
提问于 2014-03-06 12:41:41
回答 2查看 1.5K关注 0票数 4

如何在使用LumenWorks CVS解析器时读取整个行?到目前为止,我只能通过条目来读取条目,而不是整行。也就是说,如果一行是a,b,c,d,e,f,则可以提取出每个单独的字母。然而,我希望能够读懂整行。

目前我有:

代码语言:javascript
复制
my_csv = New CsvReader(New StreamReader(file_path), False, ",", resetPoint)
field_count = my_csv.FieldCount
While my_csv.ReadNextRecord()
    'process the data here
    'This code will process each individual alphabet in one row

上面的字母表读每一个字母。我想要的是

row = my_csv.row

这个选项是可用的还是类似的?

‘编辑’

当你有像我这样的基本VB编程技巧时,这就是你想出的解决问题的方法。

代码语言:javascript
复制
Dim my_string As String = ""
        For x As Integer = 0 To my_csv.FieldCount - 1
            my_string += my_csv(x).ToString.Trim + ","
        Next
        my_string = Mid(my_string, 1, Len(my_string) - 1)
        Return my_string

无论如何,请使用标记答案中的代码。它超优雅的!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-06 12:50:23

我还没有找到任何可用的东西,但这应该是可行的:

VB:

代码语言:javascript
复制
Dim rowFields = Enumerable.Range(0, my_csv.FieldCount).
   Select(Function(field) my_csv(CInt(my_csv.CurrentRecordIndex), field))
Dim line As String = String.Join(my_csv.Delimiter.ToString(), rowFields)

C#:

代码语言:javascript
复制
var rowFields = Enumerable.Range(0, my_csv.FieldCount)
    .Select(field => my_csv[(int)my_csv.CurrentRecordIndex, field]);
string line = string.Join(my_csv.Delimiter.ToString(), rowFields);
票数 3
EN

Stack Overflow用户

发布于 2016-06-03 21:54:11

我发现了一种使用CopyCurrentRecordTo(array)方法的方法,它似乎稍微快了一些(几秒钟),文件越宽(列越多)是:

C#:

代码语言:javascript
复制
string[] currentRow = new string[csv.FieldCount];
while (csv.ReadNextRecord())
{
  csv.CopyCurrentRecordTo(currentRow);
  var line = string.Join(csv.Delimiter.ToString(), currentRow);
}

VB (这是来自Telerik转换器的,当心):

代码语言:javascript
复制
Dim currentRow As String() = New String(csv.FieldCount - 1) {}
While csv.ReadNextRecord()
    csv.CopyCurrentRecordTo(currentRow)
    Dim line = String.Join(csv.Delimiter.ToString(), currentRow)
End While
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22224878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档