-4

これは本当に簡単なはずですが、私はいくつかの問題を抱えているので、助けを得るのは素晴らしいことだと思いました。

4

2 に答える 2

1

配列が Int32 の配列であると仮定します...

using (var stream = File.Create("file.xml")) {
    var serializer = new XmlSerializer(typeof(Int32[]));
    serializer.Serialize(stream, someArrayOfInt32);
}

理解/変更が非常に簡単な単純な XML ファイルを作成します。逆シリアル化するには、Deserialize メソッドを使用します。

JSON 形式の場合:

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Runtime.Serialization.Json;
 using System.IO;
 using System.Text;  
 /// <summary>
 /// JSON Serialization and Deserialization Assistant Class
 /// </summary>
 public class JsonHelper
 {
     /// <summary>
     /// JSON Serialization
     /// </summary>
     public static string JsonSerializer<T> (T t)
     {
         DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
         MemoryStream ms = new MemoryStream();
         ser.WriteObject(ms, t);
         string jsonString = Encoding.UTF8.GetString(ms.ToArray());
         ms.Close();
         return jsonString;
     }  
     /// <summary>
     /// JSON Deserialization
     /// </summary>
     public static T JsonDeserialize<T> (string jsonString)
     {
         DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
         MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
         T obj = (T)ser.ReadObject(ms);
         return obj;
     }
 }
于 2013-01-17T17:56:46.670 に答える
0

それらをシリアル化しようとしているものによって異なります。それらをテキスト ファイルとして保存しますか? おそらく生のバイナリファイルはどうですか?たぶん、XMLまたはJSONが必要ですか?

于 2013-01-17T18:32:27.360 に答える