致力于技术进步

专注于编程艺术

博客园 首页 新随笔 联系 订阅 管理
/// <summary>
2/// 保存图片到XML文件
3/// </summary>

4private void UploadImageToXml()
5{
6    /**////得到用户要上传的文件名
7    string strFilePathName = loFile.PostedFile.FileName;
8    string strFileName = Path.GetFileName(strFilePathName);
9    int FileLength = loFile.PostedFile.ContentLength;
10    if(FileLength<=0)
11        return;
12    try
13    {    
14        /**////图象文件临时储存Byte数组
15         Byte[] FileByteArray = new Byte[FileLength];
16
17        /**////建立数据流对像
18         Stream StreamObject = loFile.PostedFile.InputStream;
19
20        /**////读取图象文件数据,FileByteArray为数据储存体,0为数据指针位置、FileLnegth为数据长度
21         StreamObject.Read(FileByteArray,0,FileLength);
22
23        /**////要打开的文件
24        string fileName = Server.MapPath(".\\WriteXml.xml");   
25    
26         XmlDocument xmlDoc = new XmlDocument();
27         xmlDoc.Load(fileName);
28
29        /**////查找<dbGuest>
30         XmlNode root=xmlDoc.SelectSingleNode("dbImage");
31         XmlNodeList xnl=xmlDoc.SelectSingleNode("dbImage").ChildNodes;
32        int nIndex = xnl.Count;
33
34        /**////以下添加新结点
35         XmlElement xe1=xmlDoc.CreateElement("Image");//创建一个<User>节点
36
37         XmlElement xesub1=xmlDoc.CreateElement("ImageID");
38        
39        /**////设置文本节点
40         xesub1.InnerText=nIndex.ToString();
41
42        /**////添加到<User>节点中
43         xe1.AppendChild(xesub1);
44         XmlElement xesub2=xmlDoc.CreateElement("ImageContentType");
45         xesub2.InnerText=loFile.PostedFile.ContentType;
46         xe1.AppendChild(xesub2);
47         XmlElement xesub3=xmlDoc.CreateElement("ImageSize");
48         xesub3.InnerText=FileLength.ToString();
49         xe1.AppendChild(xesub3);
50         XmlElement xesub4=xmlDoc.CreateElement("ImageDescription");
51         xesub4.InnerText=tbDescription.Text;
52         xe1.AppendChild(xesub4);
53         XmlElement xesub5=xmlDoc.CreateElement("ImageData");
54         xesub5.InnerText= Convert.ToBase64String(FileByteArray);
55         xe1.AppendChild(xesub5);
56        
57        /**////添加到<dbGuest>节点中
58         root.AppendChild(xe1);
59         xmlDoc.Save(fileName);
60    
61         Response.Redirect("ShowAllImg.aspx");
62     }

63    catch(Exception ex)
64    {
65        throw ex;
66     }

67}
posted on 2008-05-04 22:07  stephen&amp;#183;周  阅读(275)  评论(0)    收藏  举报