0

それで、dotPeek で Solar 2 を見ていたら、保存されたゲーム ファイルが生のシリアル化されたクラスの形式であることに気付きました。この形式を読み取って編集できるプログラム (できれば無料) を知っている人はいますか?

4

3 に答える 3

0

それらがプレーンな [Serializable] オブジェクトであり、以下のコードを使用することを試してみることができますが、カスタム シリアライザーがある場合は、そのセマンティクスを取得する必要があります。

public static class Serializer
    {
        //--------------------------------------------------------------------------------------------
        /// <summary>
        /// Serializes the object to an XML string.
        /// </summary>
        /// <param name="anObject">An object.</param>
        /// <returns></returns>
        public static string SerializeObject(object anObject)
        {
            try
            {
                XmlSerializer serializer = new XmlSerializer(anObject.GetType());
                System.IO.MemoryStream aMemStr = new System.IO.MemoryStream();
                System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(aMemStr, null);
                serializer.Serialize(writer, anObject);
                string strXml = System.Text.Encoding.UTF8.GetString(aMemStr.ToArray());
                return strXml;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        //--------------------------------------------------------------------------------------------
        public static object DeSerializeObject(Type objectType, string aString)
        {
            object obj = null;
            try
            {
                XmlSerializer xs = new XmlSerializer(objectType);
                obj = xs.Deserialize(new StringReader(aString));
            }
            catch (Exception ex)
            {
                throw ex; 
            }
            return obj;
        }
    }
于 2013-05-05T23:17:31.280 に答える
0

SharpSerializer を試す

これがうまくいくことを願っています。

于 2013-05-05T23:28:16.517 に答える