2

私たちはデータをBLOBとしてデータベースに保存しています(私は知っていますが)今、私のWebサイトでデータを取得し、バイトに入れてから文字列に変換して表示しています。ただし、以下に示すように、デバッグモードで表示すると、テキストに奇妙な文字が表示されます。

Hi John
�
I look forward to receipt of your instructions in due course.
�
Kind regards
�

レンダリングすると、次のように表示されます

Hi John�I look forward to receipt of your instructions in due course.�Kind regards�

現在、コードは次のとおりです。

Dim RSFileNote As New ADODB.Recordset
        RSFileNote.Fields.Append("FileNote", 205, intSizeofBlob)

        RSFileNote.Open()
        RSFileNote.AddNew()

        For n As Integer = 0 To dsVecSegment.Tables(0).Rows.Count - 1
            RSFileNote("FileNote").AppendChunk(dsVecSegment.Tables(0).Rows(n).Item("SDATA"))
        Next
        RSFileNote.Update()

        Dim vOut As String = System.Text.Encoding.UTF8.GetString(RSFileNote("FileNote").Value)

UTF8エンコーディングでこの問題が解決すると思いますが、私の側で問題を解決するために私ができることを誰かが知っていますか?(データベースのコンテンツを正しく取得することはオプションではないため)

理想的には、無関係な文字を削除し、改行(デバッグ中に.Valueにある)を実際に機能する改行に置き換えたいと思います。

アップデート

問題は、電子メールがコピーされて最初の入力フィールドに貼り付けられ、データベースに保存されるという事実にあると思います。そのため、彼らは見通しから現場にアーティファクトを持ち越しています。

アップデート2

Esailijaの回答を考慮に入れると、�アイコンが削除されましたが、ブレークラインは依然として不思議なことに失われています。

完全な出力を投稿しますが、プライベートデータが含まれていますが、最後に貼り付けられた電子メールは次のようにエンコードされています。

,wd-s.@ÓyøYð&¥¥ÀAàA•F•  €   p   IØ%Ð`ÐîèØMà!µì$ô#i!°p1¤ Ið-œ)) -„U€. x.y.)¨}U¹ M½!;¹4%;¨5˜6)˜2YA'8<1<8<9•=; !:$Ì78è#    Ùœ<ÐNÌ'Á',A yGÅC    ±]Õ 1 õH¥Ve„8¥9dN¹FMX   hX`Kè¸XÍ”U”dnÕU-€W@U`N%PDE 
4

2 に答える 2

2

厄介な修正ですが、これを行うことができますvOut = vOut.Replace( "�"、vbCrLf)

于 2012-12-21T11:39:57.360 に答える
2
于 2012-12-21T12:15:35.750 に答える