关于文件保存到数据库及其读取的方法

本文介绍了如何将本地文件上传到数据库并从数据库中读取的步骤。首先,使用HTML表单和input[type=file]进行文件上传。接着,使用ASP.NET处理文件,将其转换为byte数组并保存到binary类型的数据库字段。最后,通过设置Response.ContentType为文件的MIME类型,使浏览器能正确打开从数据库读取的二进制数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近遇到一个问题,需要把本地的word文档通过网页上传到远程数据库保存,而且还得可以从数据库读出来。首先想到三个步骤,从本地提交文件到远程,在远程报文件保存到数据库,从数据库读出文件内容并打开。
先说提交文件,就是在静态页上用表单选择本地文件提交给动态页,也就是用input标签,当type为file时的文件上传,具体写法如:
    <form id="form1" action="input.aspx" method="post" enctype="multipart/form-data">
    <input type="file" name="file5" id="file1"/>
    <input id="submit" type="submit" value="post" />
    </form>
这里用post方法把文件上传到input.aspx的页面上,这里动态页用了ASP.NET的页,最重要的是不要忘记加上enctype属性,不加此属性的话是不会执行上传动作的。本人就是在试验了半个小时后才发现必须加上这个属性。
第二步,从aspx把文件保存到数据库。要保存文件数据库的相应字段得是binary类型,而且得把上传的文件转换成byte型数组才能保存。在input.aspx页上,可以用Request.Files[n]来获取所上传的文件
返回类型是HttpPostedFile,在这个类中可以同过InputStream属性获得文件的输入流,再用BinaryReader类从流中获取byte数组,这是最复杂的部分,代码却是挺少的,获取byte后剩下的就是正常的数据库操作了,此步代码如下:
     try
       {
     Response.Clear();
      &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值