如何将PDF如何存入MySQL_如何保存PDF、Word和Excel文件到数据库中
在项目中,有时候我们很需要把PDF、Word和Excel文档等等上传到数据库,以便日后使用。今天这篇文章向大家讲解如何将这些文件保存到数据库的。
详细步骤
第一步:打开数据库,单击新建查询,创建一个名称为Documents的表:
代码如下:
create table Documents
(
SNointidentity,
Name_File varchar(100),
DisplayName varchar(50),
Extension varchar(10),
ContentType varchar(200),
FileData varbinary(max),
FileSize bigint,
UploadDate datetime
)
这个表包含了这些数据:
SNo序列号
Name_File文件名
DisplayName 文件显示的名称
Extension文件的扩展名
ContentType文件种类
FileData文件二进制格式
FileSize文件大小
UploadDate文件导入时间
第二步:打开Visual Studio,新建一个空网站,命名为“FilesToBinary”
第三步:再添加一个新页面,命名为“Conversion.aspx”
在这个页面我们需要添加TextBox ,FileUpload ,Button这三个控件。
设计界面如图:
当然你也可以在Conversion.apsx文件直接输入下列代码:
显示文件
选择文件
第四步:控件添加后,双击Button,在Conversion.apxs.cs文件添加以下命名空间。
usingSystem;usingSystem.Web;usingSystem.Data.SqlClient;usingSystem.Data;using System.IO;
然后在Button1_Click编写代码,将文件转换为二进制流,点击Button后文件便可存到数据库中。
代码如下:
protected void Button1_Click(objectsender, EventArgs e)
{if (!FileUpload1.HasFile)
{
Response.Write("未选择文件"); return;
}else{string filename =Path.GetFileName(FileUpload1.PostedFile.FileName);string extension =Path.GetExtension(filename);string contentType =FileUpload1.PostedFile.ContentType;
HttpPostedFile file=FileUpload1.PostedFile;byte[] document = new byte[file.ContentLength];
file.InputStream.Read(document,0, file.ContentLength);//验证保存的文件扩展名是否为pdf,doc,docx,xls.
if ((extension == ".pdf") || (extension == ".doc") || (extension == ".docx") || (extension == ".xls"))
{//验证文件的大小
if (file.ContentLength <= 31457280)
{//表里插入数据
using (SqlConnection conn = new SqlConnection("Data Source=AFOD3-609221015;Initial Catalog=Personal;Integrated Security=True"))
{
conn.Open();string sql = @"insert into Documents(Name_File,DisplayName,Extension,ContentType,FileData,FileSize,UploadDate) values(@Name_File,@DisplayName,@Extension,@ContentType,@FileData,@FileSize,getdate())";
SqlCommand cmd= newSqlCommand(sql, conn);
cmd.Parameters.Add("@Name_File", SqlDbType.VarChar);
cmd.Parameters["@Name_File"].Value =filename;
cmd.Parameters.Add("@DisplayName", SqlDbType.VarChar);
cmd.Parameters["@DisplayName"].Value =txtfilename.Text.Trim();
cmd.Parameters.Add("@Extension", SqlDbType.VarChar);
cmd.Parameters["@Extension"].Value =extension;
cmd.Parameters.Add("@ContentType", SqlDbType.VarChar);
cmd.Parameters["@ContentType"].Value =contentType;
cmd.Parameters.Add("@FileData", SqlDbType.VarBinary);
cmd.Parameters["@FileData"].Value =document;
cmd.Parameters.Add("@FileSize", SqlDbType.BigInt);
cmd.Parameters["@FileSize"].Value =document.Length;
cmd.ExecuteNonQuery();
cmd.Dispose();
conn.Close();
Response.Write("数据已添加");
}
}else{ Response.Write("文件大小无效"); return; }
}else{
Response.Write("无效文件"); return;
}
}
}
View Code
运行结果如图:
这时浏览文件夹,就可以添加我们的文件了。点击导入,成功添加。
如果选择了不符合规则的文件后,则会显示:
返回数据库,这时PDF、Word 和Excel文件已经成功添加到数据库啦。
希望对你有帮助,谢谢浏览!
如何将PDF如何存入MySQL_如何保存PDF、Word和Excel文件到数据库中相关推荐
- 如何保存PDF、Word和Excel文件到数据库中
在项目中,有时候我们很需要把PDF.Word和Excel文档等等上传到数据库,以便日后使用.今天这篇文章向大家讲解如何将这些文件保存到数据库的. 详细步骤 第一步:打开数据库,单击新建查询,创建一个名 ...
- 给pdf、word、excel文件添加水印
今天公司让给pdf.word.excel文件添加水印, 在网上导了一堆,最后总结了一下方法. /** * @author CArom_XUE 2021-03-18 * * TODO 生成文 ...
- Vue下载本地pdf、word、excel文件
Vue下载本地pdf.word.excel文件 项目需求 具体实现 注意 项目需求 在项目中需要对pdf.word.excel等文档的下载 也就是获取文件的静态路径,下载到本地. 方案 :利用 axi ...
- python filedialog_Python使用FileDialog将列表保存到指定的excel文件中,python,filedialog
python 将列表使用filedialog保存到指定的excel文件中 def toExcel(self): ''' 导出列表到Excel文件中 :return: ''' ftypes=[('Exc ...
- 如何将PDF如何存入MySQL_如何将生成的pdf文件保存到java中的mysql数据...
我有一个使用itext库生成pdf文件的java类.现在根据我的需要,我必须将生成的pdf文件保存到mysql数据库表中,但是我不知道该怎么做. 我的担心是:- 1.我可以在pdf表的mysql列中提 ...
- excel未保存强制关闭计算机,Excel文件未保存就关闭了,怎么恢复数据?
很多小伙们问到,Excel文件未保存就关闭了,怎么恢复数据? 如果你搜百度,会搜到一种常见的方法:文件 - 信息 - 管理工作簿 - 恢复未保存的工作簿 - 找到备份的文件 - 恢复 这个功能真的有用 ...
- java html转pdf的几种方式_java 有关word,excel,pdf转换成html 有几种方式
展开全部 java将Word/Excel/PDF文件转换成HTML整理 项目开发过程中,需求涉及到了各种文档转换为HTML或者网页易显e68a84323131333532363134313032313 ...
- 在网页中打开pdf、word、excel文件
Word和Excel直接用微软提供的接口,PDF只需要文件路径在页面中就可以直接打开一下是主要代码:<!--显示word文件--><iframe src="https:// ...
- QQ浏览器可以处理pdf,ppt,word和excel文件您造吗?
各位职场同仁几乎都需要使用ppt,word和excel,那么我们通常如何浏览和编辑这三种文件呢?相信大多数人默认选择微软的office,但是面临最大的问题就是需要收费.其次就是使用金山公司的wps o ...
最新文章
- java web 初始化方法_Java Web(二) 类的初始化及初始化顺序
- 台积电砸7500亿强攻5nm
- 计算机网络 上海交大 ppt,上海交大计算机网络2.ppt
- mysql insert 不需要日志_MySQL数据库性能优化(1)「转」
- python如何高效办公_Python教你高效办公,自制屏幕翻译工具
- RGB to xml(labelimg应用)
- php的ci框架手册,CodeIgniter 教程 - php CodeIgniter 框架 - CodeIgniter手册
- Work Stealing
- 父窗口操控iframe
- 三维点云语义分割【综述】 ——Deep Learning for 3D Point Clouds: A Survey
- Pyth学习中一定从基础抓起
- 在matlab中画收敛域,已知用下列差分方程描述的一个线性移不变因果系统(用MATLAB方法求解)。y(n)=y(n-1)+y(n-2)十x(n-1.. - 上学吧找答案...
- 《港联证券》股票必须持仓多久才能卖?股票买入多久显示持仓?
- 深度学习之3D卷积神经网络
- ubuntu中vi编辑模式下按退格键不能删除内容,按方向键不能上下左右移动
- netstat -nat
- 中小型民营企业ERP选型
- 解决spyder无法打开问题
- MapReduce通俗理解
- iOS AVCaptureSession使用教程
热门文章
- CloudComparePCL 体元累加法(树冠体积计算)
- Sybase学习笔记
- 955不加班公司名单,2021年6月版本
- 怎么用python自带的idle来打开py文件
- ID卡,非接触式IC卡,接触式IC卡,他们分别有那些芯片封装起来的
- nfc 简单卡模拟demo
- Python 3 学习笔记(二)----数据类型
- Windows 下安装Dlib face_recognition人脸识别模块详解
- python保存为xlsb_如何使用Python将csv文件转换为xlsb?
- Excel使用过宏之后,打开excel文件会自动打开一个PERSONAL.XLSB文件