如何將圖片讀入到Dom中,并將其存為xml文件_Xml教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:淺談XML的簡單讀取與寫入
      已知有一個XML文件(bookstore.xml)如下: ?xml version=1.0 encoding=gb2312?> bookstore> book genre=&

      將圖片讀入到Dom中,并將其存為xml文件

      1、需要命名空間


      using System.Text;
      using System.IO;
      using System.Xml;

      2、文件夾中存在001.jpg圖片

      3、生成一個docSave.xml文件


      //*********************************
      {
      XmlDocument myXmlDoc = new XmlDocument();
      myXmlDoc.LoadXml("<picture><name>picture</name></picture>");

      XmlElement elem = myXmlDoc.CreateElement("image");

      // 打開圖片文件,利用該圖片構造一個文件流
      FileStream fs = new FileStream("../../001.jpg",FileMode.Open);
      // 使用文件流構造一個二進制讀取器將基元數據讀作二進制值
      BinaryReader br = new BinaryReader(fs);

      byte[] imageBuffer = new byte[br.BaseStream.Length];

      br.Read(imageBuffer,0,Convert.ToInt32(br.BaseStream.Length));

      string textString = System.Convert.ToBase64String(imageBuffer);

      fs.Close();
      br.Close();

      XmlText text = myXmlDoc.CreateTextNode(textString);

      myXmlDoc.DocumentElement.AppendChild(elem);
      myXmlDoc.DocumentElement.LastChild.AppendChild(text);

      myXmlDoc.Save("../../docSave.xml");

      MessageBox.Show("讀寫結束!");
      catch(Exception ex)
      {
      MessageBox.Show(ex.ToString());
      }
      //************************************************
      //生成后的Xml文檔
      //******

      <picture>
      <name>picture</name>
      <image>......</image>
      </picture>

      //*************************************************
      //測試上一程序
      //***********

      說明:讀取docSave.xml中的image節點,將其存為圖片格式002.jpg.


      try
      {
      int readByte = 0;
      int bytesToRead = 1044;
      XmlTextReader xmlTxtRd = new XmlTextReader("../../docSave.xml");
      FileStream fs = new FileStream("../../002.jpg",FileMode.Create);
      BinaryWriter bw = new BinaryWriter(fs);

      byte[] base64buffer = new byte[bytesToRead];
      while(xmlTxtRd.Read())
      {
      if (xmlTxtRd.NodeType == XmlNodeType.Element && xmlTxtRd.Name == "image")
      {
      do
      {
      readByte = xmlTxtRd.ReadBase64(base64buffer,0,bytesToRead);
      bw.Write(base64buffer,0,readByte);
      }
      while( bytesToRead<= readByte);
      }
      }

      bw.Flush();
      bw.Close();
      fs.Close();

      xmlTxtRd.Close();
      MessageBox.Show("讀寫結束!");
      }
      catch(Exception ex)
      {
      MessageBox.Show(ex.ToString());
      }

      分享:解讀XML文檔的基本操作
      已知有一個XML文檔(bookstore.xml)如下: ?xml version=1.0 encoding=gb2312?> bookstore> book genre=fantasy ISBN=&qu

      來源:模板無憂//所屬分類:Xml教程/更新時間:2009-08-22
      相關Xml教程