在Visual Basic中使用字典:已添加具有相同键的项

时间:2013-01-04 16:32:51

标签: visual-studio-2010 visual-studio dictionary text-files streamreader

虽然在visual studio 2010中创建此程序,但我遇到了一个问题。

我读了一个文本文件的内容并搜索每一行,以确保在添加新产品时,他们没有相同的现有ID。文件内容如下所示:

0001|Unsmoked Middle Bacon
0002|Smoked Middle bacon
0003|Unsmoked Bits

因此,如果用户尝试添加值“0001”,则会弹出错误。只有我的代码出现错误......

appPath = Application.StartupPath
    productDB = New Dictionary(Of Integer, String)
    For Each line In IO.File.ReadAllLines(appPath & "/productlist.txt")
        Dim data = line.Split("|")
        productDB.Add(CInt(data(0)), data(1))
    Next


 If productDB.ContainsKey(newID) Then
        MsgBox("Prompt of same ID")
    Else
        MsgBox("Accepted fine")
    End If

就行了 - productDB.Add(CInt(数据(0)),数据(1)) - 我似乎正在犯错误

ArgumentException was unhandled.

An item with the same key has already been added.

很多人一直在提及他们的资源.resx文件搞砸了,但我尝试了各种各样的东西似乎没有任何帮助:(

欢呼声, 罗比。

1 个答案:

答案 0 :(得分:1)

我自己的愚蠢错误。

文本文件中已存在重复条目。 (我有大约40行)

所以这与我想要输入的4位数字没有任何关系,错误发生在每行阅读时。

"D'oh" - Homer Simpson