
复制代码代码如下所示:
哈利·波特
J·K·罗琳
2005-08-15
二十九点99
学习XML
埃里克T射线
2003-10-18
三十九点95
方法1:使用StringBuilder拼接XML
复制代码代码如下所示:
X
只需创建图书信息xml
X
公共无效CreateBookXML(字符串的文件名)
{
StringBuilder xmlresult =新的StringBuilder();
列表= getbooklist(书目); / /获得书籍列表
如果(书目!= null书目。计数>0)
{
xmlresult。追加();
foreach(BookInfo书书目)
{
XmlResult.AppendFormat(
XmlResult.AppendFormat({ 0 }
XmlResult.AppendFormat({ 0 }
XmlResult.AppendFormat({ 0 }
XmlResult.AppendFormat({ 0 }
xmlresult。追加();
}
xmlresult。追加();
}
写入文件
尝试
{
1。创建文件流
FileStream文件流=新的FILESTREAM(filename,FileMode。创建);
2。创建一个作家
StreamWriter StreamWriter =新StreamWriter(文件流);
3。将内容写入文件
StreamWriter.WriteLine(xmlresult);
4。关闭的作家
将关闭();
5。关闭文件流
FileStream密切();
}
catch(例外E)
{ }
}
方法2:使用XmlTextWriter类来创建XML
复制代码代码如下所示:
X
只需创建图书信息xml
X
X
公共无效CreateBookXML(字符串的文件名)
{
尝试
{
FileStream文件流=新的FILESTREAM(filename,FileMode。创建);
XmlTextWriter作家=新的XmlTextWriter(FileStream,UTF8编码。);
列表= getbooklist(书目); / /获得书籍列表
如果(书目!= null书目。计数>0)
{
writer.writestartdocument();
writer.writestartelement(书店); / /创建一个父节点
foreach(BookInfo书书目)
{
writer.writestartelement(书); / /创建一个子节点
writer.writeattributestring(ID)(本书。bookid ToString); / /添加属性
writer.writeattributestring(catery
节点名称
writer.writestartelement(标题);
Writer.WriteValue(本书。书名); / /节点分配
writer.writeendelement();
图书作者节点
writer.writestartelement(作者);
Writer.WriteValue(本书作者);
writer.writeendelement();
发布时间
writer.writestartelement(publishdate );
writer.writevalue(book.publishdate.tostring(yyyy-mm-dd));
writer.writeendelement();
销售价格/节点
writer.writestartelement(价格);
Writer.WriteValue(书的价格);
writer.writeendelement();
(作家。WriteEndElement); / /端节点
}
(作家。WriteEndElement); / /父节点端
}
writer.writeenddocument();
作家;
FileStream密切();
}
catch(例外E)
{ }
}
XmlTextWriter类:代表作家,提供快速,非缓存,唯一的方法,生成包含XML数据流或文件。
WriteStartDocument()方法:写的XML声明。
WriteEndDocument()方法:关闭任何打开的元素或属性和复位的作家开始状态。
关联起来(StringlocalName)方法:创建一个节点开始。
WriteAttributeString(StringlocalName,字符串值)方法:添加属性节点。
writevalue(值)的方法:将一个值分配给一个节点。
三.其他代码
3.1拿一张书清单
复制代码代码如下所示:
X
只要拿一张书清单就可以了。
X
X
上市getbooklist()
{
列出书目=新的列表();
BookInfo 1 =新BookInfo(){
bookid = 1,
catery =儿童
标题哈利·波特
作者=J K. Rowling
publishdate =新的日期(2005,08,15),
价格= 29.99
};
(1)添加书目;
2 =新BookInfo BookInfo()
{
BookId = 2,
catery =Web
标题学习xml
作者=埃里克T射线
publishdate =新的日期(2003,10,18),
价格= 39.95
};
(2)添加书目;
返回书目;
}
3.2图书信息实体类
复制代码代码如下所示:
X
公共图书馆信息实体
X
公共课BookInfo
{
public int bookid {集获得;}; / /身份证书
公共字符串标题。
公共字符串catery {集获得;}; / /图书分类
公共字符串作者{
时间publishdate {集获得;} / /出版时间;
公共双价格{
}