0

我的目标是将一个长字符串输出到 SSIS 脚本组件中的 BlobColumn (Text) 中,这是执行此操作的代码。

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[nul]b[nul]c[nul]

我对代码做错了吗?我怎样才能不输出空值?

4

1 回答 1

0

知道了。C# 中的字符串存储为导致此问题的 utf16

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

通过转换为 utf8 来解决它,它删除了每个字符之间的空值。

于 2012-11-30T00:26:08.240 回答