在c#.net中使用(string,byte[])组合的列表
本文关键字:byte 组合 列表 string net | 更新日期: 2023-09-27 17:59:48
我想在c#.net.中用(string,byte[])的组合列出列表
我确实想存储多个带有名称和图像的图像。。。比如,列出,但我不知道如何动态存储和检索要列出的数据!!
存储数据,例如。。
("Blue hills", byte[]), ("Sunset", byte[]), ("Winter", byte[])
请帮我操作上面的数据。。
您应该使用这些信息创建一个数据结构(例如,一个新类)。例如:
public class Image
{
private readonly byte[] data;
private readonly string name;
public string Name { get { return name; } }
public Image(string name, byte[] data)
{
this.name = name;
this.data = data;
}
public Stream GetDataStream()
{
return new MemoryStream(data, false);
}
}
然后您将使用List<Image>
。请注意,我使用MemoryStream
作为字节数组的有用只读视图。
您要么想要
Dictionary<string, byte[]>
如果字符串值是唯一的,或者
List<Tuple<string, byte[]>>
如果不是。或者,您也可以编写自己的类来保存string
和byte[]
public class MyClass
{
public string Name { get; set; }
public byte[] Data { get; set; }
}
并创建您的类的List
。
List<MyClass>
您可以简单地使用字典。你的"名字"似乎是一把钥匙:
Dictionary<String, Byte[]> myDictionary = new Dictionary<String, Byte[]>();
如果你想访问某个值,那么你有一个优势,那就是你不需要迭代。
你可以按照Jon的话创建一个类,或者使用一个名为KeyPairValue的类,而不是创建一个数据结构