문자열을 분할하고 분할 부분을 가져 와서 변수에 할당하려고합니다. 이 첫 번째 변수와 함께 잘 작동하지만 두 번째 변수를 작동시킬 수 없습니다. 행에서문자열 분할 및 변수에 값 할당
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)
"희미한 분기로 문자열 = 단어 (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
스플릿 호출 한 후 단어의 길이는 무엇입니까 ("-")을? 그리고 단어 (0)에 대한 가치는 무엇입니까? – openshac
Split ("-")을 호출 한 후의 단어 길이는 2 글자 (Q1)가됩니다. 단어 (0)에 대한 값은 2012입니다. – gromit1
DataTable의 ** 모든 ** 열에 하이픈이 있는지 확인 했습니까? 이 예외는 분할 배열에 두 번째 요소가 없다는 것을 의미합니다. –