コード例 #1
0
        static SettingXmlSerializerTest()
        {
            var root = new XmlTestRoot();

            root.classA = new XmlTestClassA()
            {
                a = 1234,
                b = 5678.0f,
            };

            root.classB = new XmlTestClassB[] {
                new XmlTestClassB()
                {
                    v   = new Vector3(0.1f, 0.2f, 0.3f),
                    q   = Quaternion.Euler(10.0f, 20.0f, 30.0f),
                    mat = Matrix4x4.identity,
                }
            };

            root.objectC = AssetDatabase.LoadMainAssetAtPath("Assets/EditorExtensions/Samples/Editor/SettingXmlSerializerTest.cs");

            SettingXmlSerializer.ExtraData extraData = new SettingXmlSerializer.ExtraData();
            extraData.rootDirectory = "Assets/EditorExtensions/Samples/Editor";
            var bytes = SettingXmlSerializer.SerializeXmlToBytes(root, extraData);

            System.IO.File.WriteAllBytes("Assets/EditorExtensions/Samples/Editor/SettingXmlSerializerTest.xml", bytes);
        }
コード例 #2
0
 public static string SerializeXmlToString(object settings, ExtraData extraData)
 {
     try {
         using (var stringWriter = new System.IO.StringWriter()) {
             var xmlWriterSettings = new XmlWriterSettings {
                 Indent = true,
             };
             using (XmlWriter xmlWriter = XmlWriter.Create(stringWriter, xmlWriterSettings)) {
                 SettingXmlSerializer.WriteXml(xmlWriter, settings, extraData);
             }
             return(stringWriter.ToString());
         }
     } catch (System.Exception e) {
         Debug.LogError(e.ToString());
         return(null);
     }
 }