C#XML将double []序列化为单个空格分隔元素

时间:2009-05-24 02:19:54

标签: c# xml-serialization

我正在使用C#编写一个应用程序,将double或float数组序列化并放入单个XML元素,该元素是数组中值的空格分隔列表。

double[] d = new double[4] { 1.0, 2.0, 3.0, 4.0 };

到XML元素:

<ArrayOfDouble type="double">1.0 2.0 3.0 4.0</ArrayOfDouble>

我正在尝试使用XmlSerializer来执行序列化。任何有关如何完成这项工作的帮助都将非常感激。

1 个答案:

答案 0 :(得分:4)

您可以尝试以下内容。我的示例使用LINQ。如果您使用的是VS2005或更早版本,请告诉我,我会更新答案。

class Example {
  [XmlIgnore]
  public double[] DoubleValue { get ... set ... }

  public string ArrayOfDouble {
    get { return DoubleValue.Select(x => x.ToString()).Aggregate( (x,y) => x + " " + y); }
    set { Doublevalue = value.Split(' ').Select(x => Double.Parse(x)).ToArray(); }
  }
}