【问题标题】:saving values of an array plus values of other variables holds reference to it into the harddrive将数组的值加上其他变量的值保存到硬盘驱动器中
【发布时间】:2012-08-20 22:13:04
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: c# variables storing-information


    【解决方案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);
    }
    

    【讨论】:

    • 我会在 XmlSerializer、DataContractSerializer、protobuf-net、BinaryFormatter 上搜索更多内容。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-09
    • 1970-01-01
    • 2014-06-04
    • 2020-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多