【问题标题】:How to serialize and deserialize a C# array of integers? [closed]如何序列化和反序列化 C# 整数数组? [关闭]
【发布时间】:2013-01-17 17:54:49
【问题描述】:

这应该很容易,但我遇到了一些麻烦,所以我认为获得一些帮助会很棒。

【问题讨论】:

标签: c# json


【解决方案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;
     }
 }

【讨论】:

    【解决方案2】:

    取决于您尝试将它们序列化为什么。您想将它们保存为文本文件吗? 原始二进制文件怎么样?也许你想要一些 XMLJSON

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      • 2016-07-13
      • 1970-01-01
      • 1970-01-01
      • 2015-03-31
      • 2015-08-10
      相关资源
      最近更新 更多