如何使用默认的Extractor在u-sql脚本中提取具有varbinary列的文件?

时间:2017-09-01 04:56:46

标签: azure-data-lake u-sql extractor varbinarymax

我必须在文件中提取varbinary列。当我尝试用byte []提取它时。它显示错误"转换错误。列中包含无效字符"。

U-SQL脚本:

  

EXTRACT Id int ?, createddate DateTime ?, Photo byte []       来自@input       使用Extractors.Csv(引用:true,nullEscape:" \ N");

1 个答案:

答案 0 :(得分:2)

内置的Csv / Tsv / Text提取器假设它们对文本数据进行操作,其中二进制内容是十六进制编码的。这是必要的,因为否则二进制文件可能包含任何描述字符。请参见字节[]下的https://msdn.microsoft.com/en-us/library/azure/mt621366.aspx

因此,如果您的照片不是十六进制编码,则必须编写自己的自定义提取器。