Vb.net 为什么这个{“Object”引用没有设置为对象的实例? Private子文本FileToolStripMenuItem\u单击(ByVal发送方作为System.Object,ByVal e作为System.EventArgs)处理文本FileToolStripMenuItem。单击 fd.Filter=“文本文件(*.txt)|*.txt” 如果fd.ShowDialog()=DialogResult.OK,则 FileName=fd.FileName Ext=IO.Path.GetExtension(文件名) '读取文件 如果System.IO.File.Exists(FileName)=True,则 Dim objReader作为新System.IO.StreamReader(文件名) Do While objReader.Peek()-1 TextLine=TextLine&objReader.ReadLine&vbNewLine 环 TextFile.Text=TextLine 其他的 MsgBox(“文件不存在”) 如果结束 Me.btsensort.Enabled=真 Me.btndestory.Enabled=真 '计数器=计数器+1 如果结束 端接头
我猜名为Vb.net 为什么这个{“Object”引用没有设置为对象的实例? Private子文本FileToolStripMenuItem\u单击(ByVal发送方作为System.Object,ByVal e作为System.EventArgs)处理文本FileToolStripMenuItem。单击 fd.Filter=“文本文件(*.txt)|*.txt” 如果fd.ShowDialog()=DialogResult.OK,则 FileName=fd.FileName Ext=IO.Path.GetExtension(文件名) '读取文件 如果System.IO.File.Exists(FileName)=True,则 Dim objReader作为新System.IO.StreamReader(文件名) Do While objReader.Peek()-1 TextLine=TextLine&objReader.ReadLine&vbNewLine 环 TextFile.Text=TextLine 其他的 MsgBox(“文件不存在”) 如果结束 Me.btsensort.Enabled=真 Me.btndestory.Enabled=真 '计数器=计数器+1 如果结束 端接头,vb.net,Vb.net,我猜名为fd的引用被设置为null(无),因此您需要实例化一个新的OpenFileDialog并将其分配给引用: Private Sub TextFileToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextFileToolStripMenuItem.Click fd.Filter = "Text Files (*.txt)|*.txt"
fd
的引用被设置为null(无),因此您需要实例化一个新的OpenFileDialog并将其分配给引用:
Private Sub TextFileToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextFileToolStripMenuItem.Click
fd.Filter = "Text Files (*.txt)|*.txt"
If fd.ShowDialog() = DialogResult.OK Then
FileName = fd.FileName
Ext = IO.Path.GetExtension(FileName)
'read file
If System.IO.File.Exists(FileName) = True Then
Dim objReader As New System.IO.StreamReader(FileName)
Do While objReader.Peek() <> -1
TextLine = TextLine & objReader.ReadLine & vbNewLine
Loop
TextFile.Text = TextLine
Else
MsgBox("File Does Not Exist")
End If
Me.BtnSort.Enabled = True
Me.BtnDestroy.Enabled = True
'counter = counter + 1
End If
End Sub
由于您似乎希望以任何方式读取文件的全文,因此可以缩短此代码(file.Exists allready返回一个布尔值,因此不需要与true进行比较):
在使用fd之前,需要为其创建一个实例。可能在te构造函数或其声明本身中:
If System.IO.File.Exists(FileName) Then
TextLine = TextLine & System.IO.File.ReadAllText(FileName)
TextFile.Text = TextLine
Else
您在哪一行获得异常?fd.Filter=???可能重复的请告知异常发生的位置。
If System.IO.File.Exists(FileName) Then
TextLine = TextLine & System.IO.File.ReadAllText(FileName)
TextFile.Text = TextLine
Else
Private fd As New Form1