激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - 通過C#動態生成圖書信息XML文件

通過C#動態生成圖書信息XML文件

2019-11-20 14:06C#教程網 ASP.NET教程

通過C#動態生成圖書信息XML文件,下面有個不錯的示例,需要的朋友可以參考下

通過C#動態生成圖書信息XML文件(Books.xml),文件如下: 

復制代碼代碼如下:


<?xml version="1.0" encoding="iso-8859-1"?> 
<bookstore> 

<book id="1" category="CHILDREN"> 
<title>Harry Potter</title> 
<author>J K. Rowling</author> 
<publishDate>2005-08-15</publishDate> 
<price>29.99</price> 
</book> 

<book id="2" category="WEB"> 
<title>Learning XML</title> 
<author>Erik T. Ray</author> 
<publishDate>2003-10-18</publishDate> 
<price>39.95</price> 
</book> 

</bookstore> 


方法1:使用StringBuilder拼接XML 

復制代碼代碼如下:


/// <summary> 
/// 創建圖書信息XML 
/// </summary> 
public void CreateBookXML(string fileName) 

StringBuilder xmlResult = new StringBuilder("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); 
List<BookInfo> bookList = GetBookList(); //獲取圖書列表 
if (bookList != null && bookList.Count > 0) 

xmlResult.Append("<bookstore>"); 
foreach (BookInfo book in bookList) 

xmlResult.AppendFormat("<book id=\"{0}\" category=\"{1}\">", book.BookId, book.Category); 
xmlResult.AppendFormat("<title>{0}</title>", book.Title); 
xmlResult.AppendFormat("<author>{0}</author>", book.Author); 
xmlResult.AppendFormat("<publishDate>{0}</publishDate>", book.PublishDate.ToString("yyyy-MM-dd")); 
xmlResult.AppendFormat("<price>{0}</price>", book.Price); 
xmlResult.Append("</book>"); 

xmlResult.Append("</bookstore>"); 


//寫入文件 
try 

//1.創建文件流 
FileStream fileStream = new FileStream(fileName, FileMode.Create); 
//2.創建寫入器 
StreamWriter streamWriter = new StreamWriter(fileStream); 
//3.將內容寫入文件 
streamWriter.WriteLine(xmlResult); 
//4.關閉寫入器 
streamWriter.Close(); 
//5.關閉文件流 
fileStream.Close(); 

catch (Exception e) 
{ } 


方法2:使用XmlTextWriter類創建XML 

復制代碼代碼如下:


/// <summary> 
/// 創建圖書信息XML 
/// </summary> 
/// <param name="fileName"></param> 
public void CreateBookXML(string fileName) 

try 

FileStream fileStream = new FileStream(fileName, FileMode.Create); 
XmlTextWriter writer = new XmlTextWriter(fileStream, Encoding.UTF8); 
List<BookInfo> bookList = GetBookList(); //獲取圖書列表 
if (bookList != null && bookList.Count > 0) 

writer.WriteStartDocument(); 
writer.WriteStartElement("bookstore"); //創建父節點 
foreach (BookInfo book in bookList) 

writer.WriteStartElement("book"); //創建子節點 
writer.WriteAttributeString("id", book.BookId.ToString()); //添加屬性 
writer.WriteAttributeString("category", book.Category); 
//圖書名稱節點 
writer.WriteStartElement("title"); 
writer.WriteValue(book.Title); //節點賦值 
writer.WriteEndElement(); 
//圖書作者節點 
writer.WriteStartElement("author"); 
writer.WriteValue(book.Author); 
writer.WriteEndElement(); 
//出版時間節點 
writer.WriteStartElement("publishDate"); 
writer.WriteValue(book.PublishDate.ToString("yyyy-MM-dd")); 
writer.WriteEndElement(); 
//銷售價格節點 
writer.WriteStartElement("price"); 
writer.WriteValue(book.Price); 
writer.WriteEndElement(); 

writer.WriteEndElement(); //子節點結束 

writer.WriteEndElement(); //父節點結束 

writer.WriteEndDocument(); 
writer.Close(); 
fileStream.Close(); 

catch (Exception e) 
{ } 


XmlTextWriter類:表示提供快速、非緩存、只進方法的編寫器,該方法生成包含 XML 數據的流或文件。 
WriteStartDocument()方法:編寫XML的聲明。 
WriteEndDocument()方法:關閉任何打開的元素或屬性并將編寫器重新設置為 Start 狀態。 
WriteStartElement(string localName)方法:創建一個節點的開始。 
WriteAttributeString(string localName, string value)方法:給節點添加屬性。 
WriteValue(value)方法:給節點賦值。 

3、其他代碼 

3.1 獲取圖書列表 

復制代碼代碼如下:


/// <summary> 
/// 獲取圖書列表 
/// </summary> 
/// <returns></returns> 
public List<BookInfo> GetBookList() 

List<BookInfo> bookList = new List<BookInfo>(); 
BookInfo book1 = new BookInfo() { 
BookId = 1, 
Category = "CHILDREN", 
Title = "Harry Potter", 
Author = "J K. Rowling", 
PublishDate = new DateTime(2005,08,15), 
Price = 29.99 
}; 
bookList.Add(book1); 
BookInfo book2 = new BookInfo() 

BookId = 2, 
Category = "WEB", 
Title = "Learning XML", 
Author = "Erik T. Ray", 
PublishDate = new DateTime(2003,10,18), 
Price = 39.95 
}; 
bookList.Add(book2); 
return bookList; 


3.2 圖書信息實體類 

復制代碼代碼如下:


/// <summary> 
/// 圖書信息實體類 
/// </summary> 
public class BookInfo 

public int BookId { set; get; } //圖書ID 
public string Title { set; get; } //圖書名稱 
public string Category { set; get; } //圖書分類 
public string Author { set; get; } //圖書作者 
public DateTime PublishDate { set; get; } //出版時間 
public Double Price { set; get; } //銷售價格 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品色综合 | 91短视频在线观看 | 久久精品亚洲一区 | 日本黄色免费观看视频 | 91一区二区在线观看 | 免费在线观看毛片视频 | 久久久国产精品免费观看 | 国产激爽大片在线播放 | 精品国产91久久久久久浪潮蜜月 | 成人在线观看免费观看 | 国产精品视频一区二区三区四区国 | 美国一级免费视频 | 91精品国产综合久久婷婷香 | 国产超碰人人做人人爱ⅴa 国产精品久久久久久久hd | 日日草夜夜 | 精品国产观看 | 久久精品国产99久久久古代 | 成人黄色短视频在线观看 | 中文字幕22页 | 在线播放黄色网址 | 日韩黄色一级视频 | 亚洲国产视频在线 | 99国内精品视频 | 国产99久久久久久免费看 | 精品免费国产一区二区三区 | 视频一区 在线 | 国产女同玩人妖 | 久久久久久久久久久高潮一区二区 | 日本一道aⅴ不卡免费播放 久久久久久久高清 | 国产九九九九 | 久久99久久98精品免观看软件 | 久久久日韩精品一区二区三区 | 久草在线小说 | 美女网站色免费 | 免费久久久久久 | 一分钟免费观看完整版电影 | 成人国产综合 | 欧美亚洲综合网 | 国产黄色一级大片 | 视频一区二区三区中文字幕 | 欧美日韩后 |