Wrting на пустой текстовый файл добавляет дополнительные неизвестные символы в VS2008 - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть эта функция, которая получает данные в Windows Mobile и помещает их в текстовый файл, чтобы я мог получить данные из системы.

Function isDOWNLOADED() As Boolean
    isDOWNLOADED = False
    Dim lCtr As Long
    Dim iFields As Integer
    Dim strFldValues As String
    Dim OutputTXTFileName As String = GstrPCtxtOutputPath & "Daily_Transactions.txt"
    Dim strORControls As String
    strORControls = Fld2Str(LookUp("ORNUmber + '~' + lasttrxsaved + '~' + UserCode", "MAS_USERS", "BillMonth <> 'ANY'"))
    Try
        da = New clsDataAccess

        dt = da.GetData("IsBilled, AccountNo, ConsName, address, meterno, " & _
                        "ConsumerType, prevreading, presreading, usage, billdate, " & _
                        "billamount, remarks, arrears, OtherCharges, BillMOnth, " & _
                        "PenaltyAmt, DueDate, DeviceUser, Surcharge, PCAAmount, " & _
                        "ORNumber, CollDate, AmountCollected, NUmberOfPrint, " & _
                        "SeqNo, RemarksExplanation, TrxStart, TrxEnd, timestamp ", _
                        "MAS_Consumers", "AccountNo <> 'Manny Aparente' order by AccountNo ")
        If dt.Rows.Count > 0 Then

            If File.Exists(OutputTXTFileName) Then

            End If

            Dim fs As New FileStream(OutputTXTFileName, FileMode.Create)
            Dim w As New BinaryWriter(fs, System.Text.Encoding.ASCII)

            For lCtr = 0 To dt.Rows.Count - 1
                strFldValues = ""
                dr = dt.Rows(lCtr)

                If dr(0) = 1 Or dr(0) = True Then
                    strFldValues = "1~" & strORControls
                Else
                    strFldValues = "0~" & strORControls
                End If

                For iFields = 1 To 28

                    strFldValues = strFldValues & "~" & Replace(dr(iFields).ToString, "~", "")

                Next iFields

                lblStatus.Text = (lCtr + 1) & " > " & dr(1) & " > " & dr(2)
                lblStatus.Refresh()

                w.Write(strFldValues & vbNewLine)


            Next lCtr
            w.Close()
            fs.Close()
            fs = New FileStream(OutputTXTFileName, FileMode.Open, FileAccess.Read)

            isDOWNLOADED = True

        Else
            MsgBox("No Records found!")
        End If

    Catch ex As Exception
        MsgBox(ex.Message, MsgBoxStyle.Information, Me.Text)
    Finally
        da.Dispose()
        dt.Dispose()
    End Try

End Function

, но вывод всегда такой.

ú1~P10301~1/6/10 4:35:10 AM~SJWS5~zem824157~MURATA, ZENNITH~BLOCK 6 LOT 6 CDSJ PH 1
~173955~1~1361.00~1400~39~11/27/2018~633.00~100.72% Above Average~0.00~~Nov 2018
~0~12/11/18~SJWS5~0~0~~~0~0~0~~1/6/10 4:30:07 AM~1/6/10 4:30:29 AM~1/6/2010 4:30:29 AM

для 1-й строки выводится «ú1», которая должна содержать только «1».я уже искал это и безрезультатно, я не смог найти какое-либо решение.я что-то упускаю, почему он добавляет неизвестные символы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...