我目前有一个十六进制值,但它有一个奇怪的长度。我使用了一个byte []代码的文件,它都产生了十六进制的奇数字符长度。在数据库中的值之后,我复制了十六进制值,因为我需要将其用于迁移以应用于一堆其他数据库。由于奇数长度,我无法将Hex转换为Byte []。有什么建议可以跳过这个障碍吗?是否有Hex到Byte []转换器可以处理奇数个长度?
编码器一
var fileStream = new FileStream(openFileDialog.FileName, FileMode.Open, FileAccess.Read);
var bytes = new byte[fileStream.Length];
fileStream.Read(bytes, 0, Convert.ToInt32(fileStream.Length));
fileStream.Close();
UnitOfWork.FileRepository.Add(new ObjectModel.File.File
{
FileArray = bytes,
FileName = Path.GetFileName(openFileDialog.FileName),
FileExtension = Path.GetExtension(openFileDialog.FileName),
/InteractionId = _interaction.Id,
);
UnitOfWork.Save(User.Id);
答案 0 :(得分:1)
由于您从microsoft sql server management studio进行复制/粘贴,因此可以在结果中显示最大长度。您将不得不使用另一个工具来直接复制/粘贴sql数据库值。
或进入工具 - >选项 - >查询结果 - > Sql Server - >结果到网格
将Maximum Characters Retrieved
的{{1}}更改为XML data
并更改您的SQL查询以在末尾添加Unlimited
它会在结果网格中生成一个xml文件,点击它并从那里复制/粘贴十六进制值