我有一个值类型对象,我正在尝试序列化(通过 BinaryFormatter),但在这个对象中有 3 个位图,当序列化对象时会抛出“一般 gdi+ 异常”(不认真,这是异常)。
必须将这些位图序列化到文件中(而不是仅仅存储它们的相对位置并将图像与序列化对象的其余部分一起传输)。
该对象看起来很像:
[Serializable]
public struct MyObject
{
public String whatever;
// ...
public Bitmap img1;
public Bitmap img2;
}
我像这样序列化它:
BinaryFormatter bFormatter = new BinaryFormatter();
fs = new FileStream(m_ContractFolder + filename + ".xtn", FileMode.OpenOrCreate);
bFormatter.Serialize(fs, contract);
我搜索了一下,发现的大部分内容都是 xmlserialization(在这种情况下并不理想)。我不确定还能做什么。