Загрузка текстового файла с разделителями-запятыми в словарь - PullRequest
0 голосов
/ 24 января 2012

Я хочу добавить содержимое текстового файла с разделителями-запятыми (PracInfo.txt) в словарь в Form_Load. Содержимое файла выглядит следующим образом:

wlvc,coadmin
mrmd,thadmin
ccoa,oaadmin
bfhl,bfadmin
trty,tradmin
nppp,npadmin

Например, я хочу, чтобы ключ wlvc был ключом, а coadmin - соответствующим значением. Код, который у меня есть, выглядит следующим образом:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim sr As New StreamReader("C:\Programming files\PracInfo.txt")
        Dim openWith As New Dictionary(Of String, String)

        Do While sr.Peek <> -1
          strHold = sr.ReadLine()

          ' here I would like to use the String.Split method on strHold and then put that into the Dictionary using Dictionary.Add(Key,Value) but not sure how to do this????

        Loop    
    End Sub
End Class

Любая помощь в этом вопросе будет принята с благодарностью! Спасибо

Ответы [ 3 ]

4 голосов
/ 24 января 2012

Это не было проверено, просто psuedocode

Do While sr.Peek <> -1
    Dim lineArray As String() = sr.ReadLine().Split(",")
    If lineArray.Length = 2 Then
        openWith.Add(lineArray(0),lineArray(1))
    End If
Loop  
0 голосов
/ 24 января 2012

Вы можете использовать статический метод File.ReadAllLines("filename.txt"), он вернет вам массив строк, по которым вы можете выполнять итерации и каждый элемент foreach, используйте .Split() для разделения значений, разделенных запятыми, а затем добавьте их в свой словарь.

0 голосов
/ 24 января 2012

Попробуйте:

    Do While sr.Peek <> -1
        Dim line As String() = sr.ReadLine().Split(",")
        openWith.Add(line(0), line(1))
    Loop

Это прочитает строку в массив.Массив будет разбит на запятую.Затем вы можете ссылаться на 0-й и 1-й элемент в качестве ключа и значения соответственно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...