利用DataSet.ReadXml载入一个xml文件,再使用GetXmlSchema()方法输出内容如下:
1<?xml version="1.0" encoding="utf-16"?>
2<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
3 <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="en-US">
4 <xs:complexType>
5 <xs:choice minOccurs="0" maxOccurs="unbounded">
6 <xs:element name="Table1">
7 <xs:complexType>
8 <xs:sequence>
9 <xs:element name="DISPLAY" type="xs:string" minOccurs="0" />
10 <xs:element name="VALUE" type="xs:string" minOccurs="0" />
11 <xs:element name="ISPLUGIN" type="xs:string" minOccurs="0" />
12 <xs:element name="connstr" type="xs:string" minOccurs="0" />
13 </xs:sequence>
14 </xs:complexType>
15 </xs:element>
16 </xs:choice>
17 </xs:complexType>
18 </xs:element>
19</xs:schema>
而使用DataSet.WriteXmlSchema(xsdFileName)输出的内容如下2<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
3 <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="en-US">
4 <xs:complexType>
5 <xs:choice minOccurs="0" maxOccurs="unbounded">
6 <xs:element name="Table1">
7 <xs:complexType>
8 <xs:sequence>
9 <xs:element name="DISPLAY" type="xs:string" minOccurs="0" />
10 <xs:element name="VALUE" type="xs:string" minOccurs="0" />
11 <xs:element name="ISPLUGIN" type="xs:string" minOccurs="0" />
12 <xs:element name="connstr" type="xs:string" minOccurs="0" />
13 </xs:sequence>
14 </xs:complexType>
15 </xs:element>
16 </xs:choice>
17 </xs:complexType>
18 </xs:element>
19</xs:schema>
1<?xml version="1.0" standalone="yes"?>
2<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
3 <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="en-US">
4 <xs:complexType>
5 <xs:choice minOccurs="0" maxOccurs="unbounded">
6 <xs:element name="Table1">
7 <xs:complexType>
8 <xs:sequence>
9 <xs:element name="DISPLAY" type="xs:string" minOccurs="0" />
10 <xs:element name="VALUE" type="xs:string" minOccurs="0" />
11 <xs:element name="ISPLUGIN" type="xs:string" minOccurs="0" />
12 <xs:element name="connstr" type="xs:string" minOccurs="0" />
13 </xs:sequence>
14 </xs:complexType>
15 </xs:element>
16 </xs:choice>
17 </xs:complexType>
18 </xs:element>
19</xs:schema>
2<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
3 <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="en-US">
4 <xs:complexType>
5 <xs:choice minOccurs="0" maxOccurs="unbounded">
6 <xs:element name="Table1">
7 <xs:complexType>
8 <xs:sequence>
9 <xs:element name="DISPLAY" type="xs:string" minOccurs="0" />
10 <xs:element name="VALUE" type="xs:string" minOccurs="0" />
11 <xs:element name="ISPLUGIN" type="xs:string" minOccurs="0" />
12 <xs:element name="connstr" type="xs:string" minOccurs="0" />
13 </xs:sequence>
14 </xs:complexType>
15 </xs:element>
16 </xs:choice>
17 </xs:complexType>
18 </xs:element>
19</xs:schema>
两段代码仅在第一行有差别
但是第一个文件,在vs ide中无法打开,报如下错误
同时若在程序中使用这个文件也会出错
DataSet ds=new DataSet();
ds.ReadXmlSchema(xsdFileName);
在这记一下,以免以后忘了
另外有个问题考考大家,稍后给出我的答案
已经一个xml文件的格式如下:
<D>
<T>
<C1>1</C1>
<C2>2</C2>
...
<Cn>n</Cn>
</T>
<T>
<C1>1</C1>
<C2>2</C2>
...
<Cn>n</Cn>
</T>
</D>
用什么方法将其转换为如下格式
<D>
<T C1="1" C2="2"... Cn="n"></T>
<T C1="1" C2="2"... Cn="n"></T>
</D>
这是一问,二问已知第二种格式,又如何转成第一种格式,二问其实差不多,呵呵,