1

我有byte[] array一个位图。我可以通过以下方式将其保存到文件中:

File.WriteAllBytes("path&fileName", byte[]arrayName);

还有其他变量引用 this byte[] array,比如它的名字,它的原始位置等。总之,为了保存位图引用值,我如何将数据集中保存或将几个变量分组到一个集合中?

(data = byte[], name=string, loctionX = int, locationY = int, Width=int ....etc)

这个任务是只属于数据库字段还是有其他方法?例如,我可以使用 XML 或 linq 吗?(我试图猜测)(:我试图避免在我的项目中涉及数据库(SqlDatasource 连接......等)。

4

1 回答 1

1

您应该为要存储和序列化的值声明一个 POCO。例如:

public class Foo {
    public byte[] Data {get;set;}
    public string Name {get;set;}
    public int LocationX {get;set;}
    // ... etc
}

现在选择任何序列化程序;XmlSerializer、DataContractSerializer、protobuf-net、BinaryFormatter、JSON.NET - 任何都可以;并使用它从/向磁盘读取/写入实例。例如:

Foo obj = ...
using(var file = File.Create(path)) {
    var ser = new XmlSerializer(typeof(Foo));
    ser.Serialize(file, obj);
}
于 2012-08-20T22:28:06.193 回答