使用 VB.Net 从 .csv 中获取第一天和最后一天
Get first and last day from .csv with VB.Net
我有两个属性
Property FirstDayOfCsv As String
Property LastDayOfCsv As String
我希望属性从已解析的 csv 文件中获取最小值和最大值。值是日期列中“dd”格式的天数。现在我的代码如下所示:
Dim csv As String() = IO.File.ReadAllLines("my.csv").Skip(1).ToArray
For Each line In csv
Dim col = line.Split(";"c)
Dim days As Date = col(2)
FirstDayOfCsv = days.ToString("dd").Min
LastDayOfCsv = days.ToString("dd").Max
Next
不幸的是,Min 和 Max 没有 return 值,这是我需要的,我坚持在这里。如何获得它们?
您可以选择将值添加到集合中,但首先将字符串值转换为整数值。然后,一旦您完成对行的迭代,您将调用 Min/Max.
Dim csv = IO.File.ReadAllLines("my.csv").Skip(1).ToArray()
Dim everyday = New List(Of Integer)()
For Each line In csv
Dim col = line.Split(";"c)
Dim days = col(2)
Dim daysAsInt As Integer
If (Integer.TryParse(days, daysAsInt)) Then
everyday.Add(daysAsInt)
End If
Next
FirstDayOfCsv = everyday.Min()
LastDayOfCsv = everyday.Max()
我有两个属性
Property FirstDayOfCsv As String
Property LastDayOfCsv As String
我希望属性从已解析的 csv 文件中获取最小值和最大值。值是日期列中“dd”格式的天数。现在我的代码如下所示:
Dim csv As String() = IO.File.ReadAllLines("my.csv").Skip(1).ToArray
For Each line In csv
Dim col = line.Split(";"c)
Dim days As Date = col(2)
FirstDayOfCsv = days.ToString("dd").Min
LastDayOfCsv = days.ToString("dd").Max
Next
不幸的是,Min 和 Max 没有 return 值,这是我需要的,我坚持在这里。如何获得它们?
您可以选择将值添加到集合中,但首先将字符串值转换为整数值。然后,一旦您完成对行的迭代,您将调用 Min/Max.
Dim csv = IO.File.ReadAllLines("my.csv").Skip(1).ToArray()
Dim everyday = New List(Of Integer)()
For Each line In csv
Dim col = line.Split(";"c)
Dim days = col(2)
Dim daysAsInt As Integer
If (Integer.TryParse(days, daysAsInt)) Then
everyday.Add(daysAsInt)
End If
Next
FirstDayOfCsv = everyday.Min()
LastDayOfCsv = everyday.Max()