Введите ожидаемую ошибку VB.Net

Изображение ошибкиПомогите, я получаю ошибку «Тип ожидается» в моем коде для приложения на базе 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

Почему вы подумали, что было бы неплохо не сообщать нам, в какой строке возникает ошибка?

jmcilhinney 19.07.2018 13:34

Я получаю эту ошибку в StreamWriter (objFS)

Siyabonga Kubeka 19.07.2018 13:34

Этот код работает, просто протестировал его, и такой ошибки не должно быть в этой строке, проблема связана с чем-то еще, чего мы не видим в вашем вопросе. Следовательно, мы не можем вам помочь. Также я хотел бы напомнить вам, что FileStream и StreamWriter реализуют iDisposable, поэтому всегда используйте с ними using-statement.

Esko 19.07.2018 13:48

empout_fixed.txt: "Thabo Lereko 1001 Junior Programmer 10/5/2014 99.99" - Протестировано, действительно работает, как говорит Эско.

Dan Rayson 19.07.2018 13:48

Может быть, дайте нам ТОЧНОЕ исключение, это полное описание, трассировку стека, все ... Это может помочь нам понять, что у вас идет не так.

Dan Rayson 19.07.2018 13:51

Спасибо, постараюсь прикрепить картинку

Siyabonga Kubeka 19.07.2018 13:57

Я добавил изображение

Siyabonga Kubeka 19.07.2018 14:02

Перезапустите Visual Studio.

Fabio 19.07.2018 14:04
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
8
2 009
1

Ответы 1

Проблема в том, что вы назвали ваш проект "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

Пс. Добавлены операторы using, которые всегда следует использовать с объектами iDisposable. Также удален ненужный вызов.

Большое спасибо, Эско

Siyabonga Kubeka 19.07.2018 14:13

Другие вопросы по теме