0

ファイルからテキストを取得してVisualStudio10のラベルに書き込むプログラムを作成しようとしています。exeファイルのボタンをクリックして、前の行から次の行に移動したり、万力を使用したりできるようにします。その逆。テキストを配列に格納してから、ラベルを配列の特定の部分のテキストと等しくします。「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが表示されます。誰か助けてもらえますか?ありがとう。これが私のコードの一部です私のコード:

   Private Sub BrowseButton_Click(sender As System.Object, e As System.EventArgs) Handles BrowseButton.Click

            Dim UserInput As DialogResult = Browser.ShowDialog()

            If UserInput = Windows.Forms.DialogResult.Cancel Then
                Return
            End If

            FileOpen(1, Browser.FileName, OpenMode.Input)
            Do While Not EOF(1)
                Input(1, InternalTextFile(Index))
                Index += 1
            Loop
            FileClose(1)
            Output1Text.Text = InternalTextFile(Index)
            Output2Text.Text = InternalTextFile(Index + 1)

    End Sub

回線上でエラーが発生しますInput(1, InternalTextFile(Index))

4

2 に答える 2

0

It looks like maybe you want something like this:

Private Sub BrowseButton_Click(sender As System.Object, e As System.EventArgs) Handles BrowseButton.Click
    If Browser.ShowDialog() = Windows.Forms.DialogResult.Cancel Then Exit Sub

    Dim InternalTextFile() As String = File.ReadAllLines(Browser.FileName)
    Output1Text.Text = InternalTextFile(InternalTextFile.Length - 2)
    Output2Text.Text = InternalTextFile(InternalTextFile.Length - 1)
End Sub
于 2012-11-01T15:19:42.257 に答える
0

これ以上のコードを見ないとわかりにくいですが、エラーが on の場合はInput(1, InternalTextFile(Index))、変数InternalTextFileに値が割り当てられていない可能性があります。もしかしてこういうこと?

Dim InternalTextFile As New List(of String)
Dim reader As StreamReader = New StreamReader(Browser.FileName)
Try
    Do 
        InternalTextFile.Add(reader.ReadLine)
    Loop Until reader.Peek = -1
Finally
    reader.Close()
End Try
于 2012-11-01T15:06:51.343 に答える