Xml字符串与C#对象之间相互转换
我们常常需要读取xml文件,把里面的信息转化为我们自定义的类型,或则吧自定义类型转化为Xml字符串。在这里介绍一个比较简单的对象转化方法。在我自己的Framwork里面也多次用到。里面涉及到节点、属性、集合。
示例一 该xml文件涉及到属性、节点集合不涉及个节点:
<?xml version="1.0" encoding="utf-8"?>
<databaseSettings defaultInstance="CheckboxSql">
<databaseTypes>
<databaseType name="sqlserver" type="Framework.Data.Sql.SqlDatabase,Framework" />
</databaseTypes>
<instances>
<instance name="CheckboxSql" type="sqlserver" connectionString="DefaultConnectionString" />
<instance name="TestProvider" type="sqlserver" connectionString="TestConnectionString" />
<instance name="DBAuthenticationProvider" type="sqlserver" connectionString="FrameworkConnectionString" />
<instance name="DBProfileProvider" type="sqlserver" connectionString="TestConnectionString" />
</instances>
</databaseSettings>
自定相关类
[XmlRoot("databaseType", Namespace = "")]
public class DatabaseTypeData
{
// Fields
private string name;
private string typeName;
// Properties
[XmlAttribute("name")]
public string Name
{
get
{ return this.name; }
set
{ this.name = value; }
}
[XmlAttribute("type")]
public string TypeName
{
get
{ return this.typeName; }
set
{
相关文档:
using System.Text.RegularExpressions;
string ohtml = this.TextBox1.Text;
System.Text.RegularExpressions.MatchCollection m;
//提取字符串的图片
......
xml:
<?xml version="1.0" encoding="utf-8" ?>
<library>
<name>首都图书馆</name>
<address>朝阳区华威桥南</address>
<books>
<book>
<id>0000</id>
</book>
< ......
XML和HTML常用转义字符
XML和HTML中都有一些特殊的字符,这些字符在XML和HTML中是不能直接使用的,如果必须使用这些字符,应该使用其对应的转义字符。
如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。
所以不应该像下面那样书写代码:
<message&g ......
<Records>
<Record>
<id>1 </id>
<name>李四 </name>
</Record>
<Record>
<id>2 </id>
<name>张三 </name>
</Record>
<Record>
<id>3 </id>
<name>王五 </name>
</Record& ......
1。写一个xml文件
<?xml version="1.0" encoding="utf-8" ?>
- <root>
- <user id="101">
<name>abc</name>
<password>abc</password>
</user>
- <user id="102">
<name>ccc</name>
<password>ccc< ......