欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp.net 将一个图片以二进制值的形式存入Xml文件中的实例代码

程序员文章站 2024-02-29 10:33:40
复制代码 代码如下:try   {    int readbyte = 0;    ...
复制代码 代码如下:

try
   {
    int readbyte = 0;        //
    int bytestoread = 100;       //数据缓冲区大小
    string filename = "../../writexml.xml";   //要打开的文件
    //   this.textbox1.text = string.empty;           
    // 打开图片文件,利用该图片构造一个文件流
    filestream fs = new filestream("../../001.jpg",filemode.open);
    // 使用文件流构造一个二进制读取器将基元数据读作二进制值
    binaryreader br = new binaryreader(fs);
    xmltextwriter xmltxtwt = new xmltextwriter(filename,encoding.utf8);
    //输出设置 代码缩进
    xmltxtwt.formatting = formatting.indented;
    //   xmltxtwt.indentation = 4;
    //书写声明
    xmltxtwt.writestartdocument();
    xmltxtwt.writestartelement("picture","contactdetails","//www.jb51.net");//定义命名空间
    xmltxtwt.writestartelement("image");            //定义节点
    xmltxtwt.writeattributestring("imagename","002.jpg");        //添加图片属性
    byte[] base64buffer = new byte[bytestoread];          //开辟缓冲区
    do
    {
     readbyte = br.read(base64buffer,0,bytestoread);      //将数据读入字节数组
     xmltxtwt.writebase64(base64buffer,0,readbyte);       //将数组中二进制值编码为base64并写出到xml文件
    }while(bytestoread <= readbyte);
    xmltxtwt.writeendelement();
    xmltxtwt.writeendelement();
    xmltxtwt.writeenddocument();
//    xmltxtwt.flush();
    xmltxtwt.close();
    messagebox.show("读写结束!");
    //   this.textbox1.text = readxml(filename);
   }
   catch(exception ex)
   {
    messagebox.show(ex.tostring());
   }