MemoryStream到sbyte []

时间:2014-05-30 14:00:10

标签: c# .net memorystream

我仍在尝试使用Novell的c#库向开放式LDAP中的人添加jpeg图像:

Openldap: Add jpegPhoto to inetOrgPerson

Novell.Directory.Ldap.LdapAttribute有一个带有以下签名的构造函数:

public LdapAttribute(string attrName, sbyte[] attrBytes)

所以,我打算用这个。但是,如何将一个jpeg图像从MemoreyStream转换为sbyte []?

MemoryStream.ToArray() 

方法返回byte [],我不知道该怎么做。

2 个答案:

答案 0 :(得分:3)

您可以像这样转换数组:

Array.ConvertAll(bytes, b => (sbyte)b)

答案 1 :(得分:1)

在CLR上,您可以将byte[]定时转换为sbyte[]See my previous answer on this little-known trick.

(sbyte[])(object)MemoryStream.ToArray(); //compiles and runs