0

私は大学で VB に取り組んでおり、課題の 1 つに問題が発生しています。誰か助けてくれませんか?次の辞書コードを取得することを目指しています。

Public Class Inventory
Public ItemInventory As New Dictionary(Of String, Item)

Public Function iItem(ByVal key As String) As Item
    Return ItemInventory(key)
End Function

Public Sub addItem(ByVal item As String, ByVal Desc As String, ByVal DRate As Double, ByVal WRate As Double, _
                   ByVal MRate As Double, ByVal Quantity As Integer)
    With ItemInventory
        .Add(item, New Item(item, Desc, DRate, WRate, MRate, Quantity))
    End With
End Sub

Public Sub removeItem(ByVal item As String)

    With ItemInventory
        .Remove(item)
    End With
End Sub

Public Function returnKeys() As String()
    Dim Keys() As String

    With ItemInventory
        Keys = .Keys.ToList.ToArray
    End With

    Return Keys
End Function
End Class

きれいではないことはわかっていますが、それは仕事を成し遂げます。それが私が目指しているすべてです. これは、プログラムで辞書項目を表示することにも関係していますが、これにも問題がありますが、これを一度に 1 つずつ実行したいので、後で説明します。 、 もし可能なら。

執筆によると、これは読み書きのための私の現在のコードです:

    Imports System.IO

Public Class InventoryFile
    Public Sub RFile(ByVal FPath As String, ByRef dInventory As Inventory)
        Dim infile As StreamReader = File.OpenText(FPath)
        Dim entireLine As String = infile.ReadLine()
        Dim fields() As String = entireLine.Split(","c)

        While infile.EndOfStream
            Dim dItem As New Item
            dItem.ID = fields(0)
            dItem.Description = fields(1)
            dItem.Daily = fields(2)
            dItem.Weekly = fields(3)
            dItem.Monthly = fields(4)
            dItem.Quantity = fields(5)

            'AddItem
            dInventory.addItem(dItem.ID, dItem.Description, dItem.Daily, dItem.Weekly, _
                               dItem.Monthly, dItem.Quantity)

        End While
    End Sub

    Public Sub WFile(ByVal FPath As String, ByRef dInventory As Inventory)
        Dim outfile As StreamWriter = File.CreateText(FPath)

        For Each Item As KeyValuePair(Of String, Item) In dInventory.ItemInventory



        Next
    End Sub


End Class

正しく投稿されたことを願っています。さて、私が理解している限り、ファイルを辞書に入れるという点では問題なく機能しますが、私のStreamWriterである「WFile」は私を困惑させています。誰かがそれを手伝ってくれますか?同様に、閉じるときにファイルを閉じて書き込むことになっています。閉じるボタンのコードは Me.Close() コマンドだけです。プログラムにファイルへの書き込みをさせるトリガーを作成するにはどうすればよいですか? メイン フォーム コードと私の 'InventoryFile' はどちらも別のクラスであるため、問題の他のクラスを参照してこれを行う必要があります。

4

2 に答える 2