asp.net中打开word(2)

如果要求把word文件存储在sql server中时,就是存的时候先把文件转成byte[],然后赋值给定义的image参数,最后运行SQL命令进行提交。
取的时候把image列转成byte[]类型的,然后赋值给byte[]类型的变量。
下面的例子演示了如何从数据库中取出数据保存成word文件
      FileStream fs;
      BinaryWriter bw;
      int BufferSize=100;
      byte[] OutPutByte=new byte[BufferSize];
      long FinishedBytes,StartIndex;
      string filePath=this.Request.PhysicalApplicationPath+@"temp/wordData.doc";
      while (reader.Read())
      {
       fs=new FileStream(filePath,FileMode.OpenOrCreate,FileAccess.Write);
       bw=new BinaryWriter(fs);
       StartIndex=0;
       //将字节流读入outbyte缓冲区中并返回读取的字节数
       FinishedBytes=reader.GetBytes(0,StartIndex,OutPutByte,0,BufferSize);
       //当读取的字节流达到缓冲区允许的最大长度时要卸载缓冲区内的数据并将数据写入文件
       while (FinishedBytes==BufferSize)
       {
        bw.Write(OutPutByte);
        bw.Flush();
        //重新设定开始读取的位置,并继续读取和写数据
        StartIndex+=BufferSize;
        FinishedBytes=reader.GetBytes(0,StartIndex,OutPutByte,0,BufferSize);
       }
       //将缓冲区内最后剩余的数据写入文件
       if(FinishedBytes!=0)
        bw.Write(OutPutByte,0,(int)FinishedBytes-1);
       bw.Flush();
       bw.Close();
       fs.Close();
      }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值