0

所以我在 Visual Basic 中有一个问题,我有两个数组,分别称为 arrLang1 和 arrLang2

我想将 - 之前的单词放入第一个数组,将 - 之后的单词放入第二个数组。而这些话来自一个txt文件。

瑞典语单词 1 - 英语单词 1

瑞典语Word2 - 英语Word2

瑞典语Word3 - EnglishWord3

瑞典语Word4 - 英语Word4

4

1 回答 1

0

你为什么不使用 aDictionary(Of String. String)代替?它们是专门为这种要求而创建的。

Dictionary<TKey, TValue>泛型类提供从一组到一组的映射。字典中的每个添加都包含一个值及其关联的键。使用其键检索值非常快,接近 O(1)。每个键都必须是唯一的

Dim allLines = From line In File.ReadLines(path) Where Not String.IsNullOrWhiteSpace(line)
Dim dict = New Dictionary(Of String, String)
For Each line As String In allLines
    Dim words = line.Split({" - "}, StringSplitOptions.RemoveEmptyEntries)
    If words.Length >= 2 Then
        dict(words(0)) = words(1)
    End If
Next

如果您坚持收集我会使用 aList(Of String)而不是数组,因为您不知道正确的大小并且数组是固定大小的:

Dim swedishWords = New List(Of String)
Dim englishWords = New List(Of String)
For Each line As String In allLines
    Dim words = line.Split({" - "}, StringSplitOptions.RemoveEmptyEntries)
    If words.Length >= 2 Then
        swedishWords.Add(words(0))
        englishWords.Add(words(1))
    End If
Next

如果你真的需要数组swedishWords.ToArray()englishWords.ToArray()之后。

于 2013-10-25T07:46:38.030 回答