vb.net - 拆分字符串并为变量赋值

标签 vb.net split

我正在尝试拆分一个字符串并将拆分的部分分配给变量。这适用于第一个变量,但我无法使第二个变量起作用。

For Each columnQuarter As DataColumn In dt.Columns
            Dim s As String = columnQuarter.ColumnName
            Dim words As String() = s.Split("-")
            Dim Year As String = words(0)
            Dim Quarter As String = words(1)
            Debug.WriteLine(Year)
            Debug.WriteLine(Quarter)

在“Dim Quarter As String = words(1)”行,我收到错误代码“IndexOutofRangeException 未处理。索引超出数组范围。”

ColumnName 的一个例子是 2012-Q1。

附加信息:

这是我用来将我的列添加到我的数据表中的代码。如您所见,我的前两列不包含“-”。

tickerColumn = New DataColumn("Ticker", Type.GetType("System.String"))
consistencyColumn = New DataColumn("Consistency", Type.GetType("System.Int32"))
dt.Columns.Add(tickerColumn)
dt.Columns.Add(consistencyColumn)

    With Me
        lr = Now.Year - 1901
        For i = 1 To lr
            column = New DataColumn
            column.DataType = System.Type.GetType("System.Int32")
            column.ColumnName = Now.Year - i & "-Q4"
            dt.Columns.Add(column)

            column = New DataColumn
            column.DataType = System.Type.GetType("System.Int32")
            column.ColumnName = Now.Year - i & "-Q3"
            dt.Columns.Add(column)

            column = New DataColumn
            column.DataType = System.Type.GetType("System.Int32")
            column.ColumnName = Now.Year - i & "-Q2"
            dt.Columns.Add(column)

            column = New DataColumn
            column.DataType = System.Type.GetType("System.Int32")
            column.ColumnName = Now.Year - i & "-Q1"
            dt.Columns.Add(column)
        Next i
    End With

最佳答案

由于您的前两列没有破折号,请尝试过滤掉它们:

For Each columnQuarter As DataColumn In dt.Columns
  Dim s As String = columnQuarter.ColumnName
    If s.Contains("-") Then
      Dim words As String() = s.Split("-")
      Dim Year As String = words(0)
      Dim Quarter As String = words(1)
      Debug.WriteLine(Year)
      Debug.WriteLine(Quarter)
    End If
Next

关于vb.net - 拆分字符串并为变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14649128/

相关文章:

vb.net - 缺少依赖项时如何避免异常? (WMP控制)

.net - 由于不拥有线程,串行端口读取导致错误

Python-如何拆分字符串列表以按原始顺序获得唯一的拆分

c# - 拆分字符串并验证每个部分

c# - 用括号外的逗号拆分值?

asp.net - 处理 DatePicker 中的空引用

vb.net - 将字节数据加载到图片框

sql - vb.net sql上次插入的ID

java - 如何将字符串排序到映射中并打印结果

Python:如何将三个文本文件添加到一个变量中,然后将其拆分为一个列表