0

次のコードがあります。

Public Class MyAccount

Dim FileName As String = Application.StartupPath & "\myarray.txt"
Dim AccessLog() As String

Private Sub MyAccount_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ListBox1.Items.Clear()
    AccessLog = File.ReadAllLines(FileName)
    ListBox1.Items.AddRange(AccessLog)
    ListBox1.Items.Add("Last Login: " + DateTime.Now.ToLongTimeString())
    IO.File.WriteAllLines(FileName, ListBox1)
    ListBox1.Refresh()
End Sub

End Class

このコードでの私の目標は、フォーム MyAccount() が開くたびに、レコードをリスト ボックスに追加し、これをテキスト ファイルに保存して、アプリケーションを閉じた後に保存することです。ただし、最善の方法で行っているかどうかはわかりません。次の行に「ファイルが宣言されていません。保護レベルのためにアクセスできる可能性があります」というエラーが表示されます。

AccessLog = File.ReadAllLines(FileName)

どんな助けでも大歓迎です。

4

3 に答える 3

1

次のいずれかを使用します。

System.IO.File.ReadAllLines 

または、次の名前空間をインポートします。

System.IO.
于 2013-10-28T22:27:14.930 に答える
0

ListBox.Items コレクションを使用してファイルに書き込みます。1 つの方法は、LINQ を使用することです。

Private Sub MyAccount_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ListBox1.Items.Clear()
    AccessLog = File.ReadAllLines(FileName)
    ListBox1.Items.AddRange(AccessLog)
    ListBox1.Items.Add("Last Login: " + DateTime.Now.ToLongTimeString())
    IO.File.WriteAllLines(FileName, ListBox4.Items.Cast(Of String)().ToArray)
    ListBox1.Refresh()
End Sub
于 2013-10-28T23:41:46.023 に答える