从csv文件读取和写入 [英] Reading and writing from a csv file

查看:166
本文介绍了从csv文件读取和写入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Structure TownType
    Dim Name As String
    Dim County As String
    Dim Population As Integer
    Dim Area As Integer
End Structure

Sub Main()
    Dim TownList As TownType
    Dim FileName As String
    Dim NumberOfRecords As Integer
    FileName = "N:\2_7_towns(2).csv"

    FileOpen(1, FileName, OpenMode.Random, , , Len(TownList))
    NumberOfRecords = LOF(1) / Len(TownList)
    Console.WriteLine(NumberOfRecords)
    Console.ReadLine()

该文件,但返回值为24的记录数。如何解决此问题?

There are only 12 records in the file but this returns a value of 24 for number of records. How do I fix this?

csv文件的内容:

Town, County,Pop, Area
Berwick-upon-tweed, Nothumberland,12870,468
Bideford, devon,16262,430
Bognor Regis, West Sussex,62141,1635
Bridlington, East Yorkshire,33589,791
Bridport, Dorset,12977,425
Cleethorpes, Lincolnshire,31853,558
Colwyn bay, Conway,30269,953
Dover, Kent,34087,861
Falmouth, Cornwall,21635,543
Great Yarmouth, Norfolk,58032,1467
Hastings, East Sussex,85828,1998


推荐答案

这会将内容读入集合,您可以从集合中获取记录数。

This will read the contents into a collection and you can get the number of records from the collection.

    Sub Main()

    Dim FileName As String
    Dim NumberOfRecords As Integer
    FileName = "N:\2_7_towns(2).csv"

    'read the lines into an array
    Dim lines As String() = System.IO.File.ReadAllLines(FileName)

    'read the array into a collection of town types
    'this could also be done i a loop if you need better
    'parsing or error handling
    Dim TownList = From line In lines _
        Let data = line.Split(",") _
            Select New With {.Name = data(0), _
                             .County = data(1), _
                             .Population = data(2), _
                             .Area = data(3)}

    NumberOfRecords = TownList.Count
    Console.WriteLine(NumberOfRecords)
    Console.ReadLine()

End Sub

将会完成与类似:

For Each town In TownList
    Console.WriteLine(town.Name + "," + town.County)
Next

这篇关于从csv文件读取和写入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆