0

私の目標は、長い文字列を SSIS スクリプト コンポーネントの BlobColumn (テキスト) に出力することです。これを行うコードを次に示します。

byte[] blobdata = GetBytes(notes.Substring(0, (notes.Length < 16000 ? notes.Length : 16000)));
blobdata = blobdata.SkipWhile(x => x == 0).ToArray(); //Remove the nulls?
Row.SCNotes.AddBlobData(blobdata);

このフィールドを出力したメモ帳++でファイルを開くと、次のようになります

元の文字列: abc

出力: a[ヌル]b[ヌル]c[ヌル]

コードに何か問題がありますか? ヌルを出力しないようにするにはどうすればよいですか?

4

1 に答える 1

0

とった。C# の文字列は utf16 として保存されるため、この問題が発生します。

byte[] blobdata = Encoding.UTF8.GetBytes(strNotes);

各文字間のヌルを削除するutf8に変換することで解決しました。

于 2012-11-30T00:26:08.240 に答える