我一直在阅读this,因为我想通过LINQ这样做。但是,我一直无法弄清楚如何从API中读取数据。
当我输出resource.Data.Body
时,它会说Byte[]
。
当我输出resource.Data.Size
时,它会显示834234822
。 (或类似的东西)
我正在尝试将内容保存到我的数据库中,如下所示:
newContent.ATTACHMENT = resource.Data.Body;
但是,没有加载任何数据。我假设我必须遍历Body
并将内容存储在变量中,但我不确定如何。
有人可以帮我把点连接起来吗?
修改
这是我尝试阅读http://dev.evernote.com/start/core/resources.php
的二进制数据的来源编辑2:
我使用下面的代码,它给我二进制数据并保存到数据库,但它必须是损坏的,或者是因为当我打开文件时,Windows照片查看器说它已损坏或太大......
Resource resource = noteStore.getResource(authToken, attachment.Guid, true, false, true, true);
StringBuilder data = new StringBuilder();
foreach(byte b in resource.Data.Body)
{
data.Append(Convert.ToString(b, 2).PadLeft(8, '0'));
}
...
newContent.ATTACHMENT = System.Text.Encoding.ASCII.GetBytes(data.ToString());
答案 0 :(得分:2)
鉴于resource.Data.Body
为byte[]
,newContent.ATTACHMENT
为System.Data.Linq.Binary
,您应该使用System.Data.Linq.Binary
上的构造函数,该构造函数采用类型为{{ 1}}。 http://msdn.microsoft.com/en-us/library/bb351422.aspx
byte[]