我的目标是将长字符串输出到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 [nul] b [nul] c [nul]
我的代码有什么问题吗?我怎么能不输出空值?
答案 0 :(得分:0)
知道了。 C#中的字符串存储为utf16,这会导致此问题
byte[] blobdata = Encoding.UTF8.GetBytes(strNotes);
通过转换为utf8来解决它,删除了每个字符之间的空值。