我有一个类似以下的属性:
public Dictionary<string, Byte[]> Collection{ get; set; }
现在我需要循环遍历,仅将字节放入字节数组(这基本上是图像数组。我该怎么办?
我尝试了以下类似的操作,但是我知道它是错误的,但是我们尝试阅读类似的内容吗?它可能有多达10个项目。它可以有1个或最多10个...
更新我更喜欢将所有最多10个数组或数组中最多10个数组的内容读取到下面的“图像”数组中...我有一个变量。...
byte[] image = new byte[10];
foreach (KeyValuePair<string, byte[]> val in input.Collection)
{
image = // read all the bytes alone as array...It can have 1 or 2 or upto 10...
}
更新
我有这个
[
{
"name":"image.jpg",
"doc":"0x255044462D312E370A25E4E3CFD20A342030206F626A0A3C3C2F537562747970652F496D6167652F5769647468203431332F486569676874203132332F4D61736B5B323535203235355D2F426974735065724",
"numberId":"2adb2911-9dea-4ca3-9a48-a4ef918c9ee8",
"RefID":"2adb2911-9dea-4ca3-9a48-a4ef918c9ee8"
}
]
我想将“ doc”读入此列表...因此,基本上该数据结构最多可以包含10个项目。...每个文件可能具有不同的文件类型,例如.jpg,.tiff等,我至少希望提取“扩展名类型-相应的字节值
此外,我需要具有相应的商品名称,即上面数据中的第一个值
答案 0 :(得分:1)
嗯,您的问题对我来说有点晦涩,但在我看来,您只是想读取字典中每个元素的字节数组。
在这种情况下,您只需要与val.Value
属性进行交互。如果要将其值分配给image
变量,只需执行以下操作:
byte[] image;
foreach (KeyValuePair<string, byte[]> val in input.Collection)
{
image = val.Value;
// Then do something with 'image', like: System.IO.File.WriteAllBytes($"C:\\MyImage_{val.Key}.jpg", image);
}