ASP.Net/XML/Binary

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Write Binary (Image) Data to XML

   <source lang="csharp">

<%@ Page Language="C#" %> <%@ Import Namespace="System.Xml" %> <%@ Import Namespace="System.IO" %> <script runat="server">

   void Page_Load(object sender, EventArgs e)
   {

// string xmlFilePath = @"C:\EmployeesNew.xml"; // string imageFileName = @"C:\yourBinaryFileName.jpg";

       string xmlFilePath = MapPath("EmployeesNew.xml");
       string imageFileName = MapPath("3.ico");
       try
       {
           using (XmlWriter writer = XmlWriter.Create(xmlFilePath))
           {
               writer.WriteStartDocument(false);
               writer.WriteStartElement("employee");
               writer.WriteAttributeString("id", "1");
               writer.WriteStartElement("image");
               writer.WriteAttributeString("fileName", imageFileName);
               //Get the size of the file
               FileInfo fi = new FileInfo(imageFileName);
               int size = (int)fi.Length;
               //Read the JPEG file
               byte[] imgBytes = new byte[size];
               FileStream stream = new FileStream(imageFileName, FileMode.Open);
               BinaryReader reader = new BinaryReader(stream);
               imgBytes = reader.ReadBytes(size);
               reader.Close();
               //Write the JPEG data
               writer.WriteBinHex(imgBytes, 0, size);
               writer.WriteEndElement();
               writer.WriteEndElement();
               writer.WriteEndDocument();
               writer.Flush();
               lblResult.Text = "File is written successfully";
           }
       }
       catch (Exception ex)
       {
           lblResult.Text = "An Exception occurred: " + ex.Message;
       }
   }

</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">

   <title>Writing Images using XmlWriter</title>

</head> <body>

   <form id="form1" runat="server">
       <asp:label id="lblResult" runat="server" />
   </form>

</body> </html>

      </source>