类型预期错误VB.Net

时间:2018-07-19 11:32:36

标签: vb.net

Error Image,请协助,基于Windows的应用程序在我的代码上出现“预期类型”错误。我在“ Dim objSW As New StreamWriter(objFS)”这一行收到错误消息

Imports System.IO
Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim strFileName As String = My.Application.Info.DirectoryPath & "\empout_fixed.txt"
        Dim objFS As New FileStream(strFileName, FileMode.Create, FileAccess.Write)
        Dim objSW As New StreamWriter(objFS)
        Dim strEmpName As String
        Dim intDeptNbr As Integer
        Dim strJobTitle As String
        Dim dtmHireDate As Date
        Dim sngHrlyRate As Single
        strEmpName = “Thabo Lereko”
        intDeptNbr = 1001
        strJobTitle = “Junior Programmer”
        dtmHireDate = #10/05/2014#
        sngHrlyRate = 99.99
        ' Write out the record to the file ...
        objSW.WriteLine(strEmpName.PadRight(20) &
        intDeptNbr.ToString.PadLeft(4) &
        Space(5) &
        strJobTitle.PadRight(21) &
        Format(dtmHireDate, "M/d/yyyy").PadRight(10) &
        Format(sngHrlyRate, "Standard").PadLeft(5))
        MsgBox("Record was written to the output file.")
        objSW.Close()
    End Sub
End Class

1 个答案:

答案 0 :(得分:2)

问题是您已将项目命名为“ StreamWriter” ,这导致“ StreamWriter”引用项目的名称空间。也许只是为了清楚起见,将来您应该使用更多描述性的项目名称?

您可以通过引用带有名称空间的实际StreamWriter来解决此问题:

Imports System.IO
Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim strFileName As String = My.Application.Info.DirectoryPath & "\empout_fixed.txt"
        Using objFS As New FileStream(strFileName, FileMode.Create, FileAccess.Write)
         Using objSW As New System.IO.StreamWriter(objFS)
          Dim strEmpName As String
          Dim intDeptNbr As Integer
          Dim strJobTitle As String
          Dim dtmHireDate As Date
          Dim sngHrlyRate As Single
          strEmpName = “Thabo Lereko”
          intDeptNbr = 1001
          strJobTitle = “Junior Programmer”
          dtmHireDate = #10/05/2014#
          sngHrlyRate = 99.99
          ' Write out the record to the file ...
          objSW.WriteLine(strEmpName.PadRight(20) &
          intDeptNbr.ToString.PadLeft(4) &
          Space(5) &
          strJobTitle.PadRight(21) &
          Format(dtmHireDate, "M/d/yyyy").PadRight(10) &
          Format(sngHrlyRate, "Standard").PadLeft(5))
          MsgBox("Record was written to the output file.")              
         End Using
      End Using
    End Sub
End Class

Ps。添加了应始终与iDisposable-objects一起使用的使用语句。还删除了不必要的关闭呼叫。