将可变数据保存到磁盘

是否可以将变量从C#保存到磁盘,以便以后能够在项目的另一个实例中使用它?

例如,我有一个包含3个字段的结构,如下例所示:

struct MyStruct { byte[] ByteData; int MyInt; double MyDouble; }; 

我有一个这个结构的实例,让我们说MyStruct S ,我为我的所有字段赋值。 在这一步之后,我想以某种方式将此变量保存在磁盘中,以便我可以在程序中稍后使用这些存储的值。

我知道,我可以将这些值复制到.txt文件中,但我想保存变量,因为它在我的磁盘上,以便我可以在项目的下一个运行时将其直接加载到内存中。

有可能以某种方式将其保存在磁盘上,以便我可以将其加载到我的程序中吗?

 public void SerializeObject(string filename, T obj) { Stream stream = File.Open(filename, FileMode.Create); BinaryFormatter binaryFormatter = new BinaryFormatter(); binaryFormatter.Serialize(stream, obj); stream.Close(); } public T DeSerializeObject (string filename) { T objectToBeDeSerialized; Stream stream = File.Open(filename, FileMode.Open); BinaryFormatter binaryFormatter = new BinaryFormatter(); objectToBeDeSerialized= (T)binaryFormatter.Deserialize(stream); stream.Close(); return objectToBeDeSerialized; } [Serializable] struct MyStruct { byte[] ByteData; int MyInt; double MyDouble; } 

不要忘记将对象标记为可序列化。

您可以使用序列化,检查此MSDN链接, 序列化 。

默认的序列化选项是二进制和XML 。

序列化它: http : //msdn.microsoft.com/en-us/library/et91as27.aspx