我已經構建了一個VB.Net類,它將用於VBA中讀取文本文件。我已經設置好了,所以用戶可以指定他想返回的文件中的表格。我所做的是構建表的StringBuilder,然後將其作爲鋸齒狀數組返回,但我無法完全將構建器轉換爲數組部分。我希望第一層被拆分成「NewLine」,第二層被拆分成「,」。將StringBuilder轉換爲鋸齒形數組
這是可能的,而不必使用多個數組和\或循環?
我已經構建了一個VB.Net類,它將用於VBA中讀取文本文件。我已經設置好了,所以用戶可以指定他想返回的文件中的表格。我所做的是構建表的StringBuilder,然後將其作爲鋸齒狀數組返回,但我無法完全將構建器轉換爲數組部分。我希望第一層被拆分成「NewLine」,第二層被拆分成「,」。將StringBuilder轉換爲鋸齒形數組
這是可能的,而不必使用多個數組和\或循環?
這將創建交錯數組:
Dim myArray = (From row In myStringBuilder.ToString().Split({vbCrLf}, StringSplitOptions.None)
Select (From col In row.Split(","c)
Select col
).ToArray()
).ToArray()
說明:
myStringBuilder.ToString()
Split
overload that accepts a string array(因此使用大括號)。Split(","c)
。 c
指定這是一個字符而不是字符串。ToArray
應用於外部以及內部LINQ表達式,將此枚舉的枚舉類型轉換爲數組數組。您可以使用嵌套列表和泛型來表示鋸齒陣列。外部(行)將是一個通用列表,內部(col)可以是一個字符串列表。
其他方法可以利用XML或LINQ,但效率較低。
工作就像一個魅力!感謝Heinzi! – JoeB