C#把一个数据结构转为STRING后如何在转回数据结构
时间: 2024-10-13 17:08:04 浏览: 27
在C#中,如果你想要将一个数据结构(如自定义类、数组、集合等)转换成字符串(例如JSON或XML格式),可以使用 Newtonsoft.Json 或 System.Xml.Serialization 等库。以下是两个示例:
**1. JSON格式:**
```csharp
using Newtonsoft.Json;
// 假设有一个User类
public class User
{
public string Name { get; set; }
public int Age { get; set; }
}
// 将User对象转换为JSON字符串
string json = JsonConvert.SerializeObject(new User { Name = "John", Age = 30 });
// 反序列化字符串回User对象
User userFromJson = JsonConvert.DeserializeObject<User>(json);
```
**2. XML格式:**
```csharp
using System.Xml.Serialization;
[XmlRoot(ElementName = "User")]
public class User
{
[XmlElement(ElementName = "Name")]
public string Name { get; set; }
[XmlElement(ElementName = "Age")]
public int Age { get; set; }
// ...
public static User ParseFromXml(string xml)
{
return (User)new XmlSerializer(typeof(User)).Deserialize(new StringReader(xml));
}
public static string SerializeToXml(User user)
{
using (StringWriter textWriter = new StringWriter())
{
new XmlSerializer(typeof(User)).Serialize(textWriter, user);
return textWriter.ToString();
}
}
}
```
在上述代码中,`SerializeToXml` 方法用于将 `User` 对象转换为 XML 字符串,而 `ParseFromXml` 则是反序列化的过程。
阅读全文