一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - ASP.NET保存PDF、Word和Excel文件到數據庫

ASP.NET保存PDF、Word和Excel文件到數據庫

2020-04-19 16:36Yesi ASP.NET教程

這篇文章主要為大家詳細介紹了ASP.NET保存PDF、Word和Excel文件到數據庫的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

在項目中,有時候我們很需要把PDF、Word和Excel文檔等等上傳到數據庫,以便日后使用。今天這篇文章向大家講解如何將這些文件保存到數據庫的。

詳細步驟

第一步:打開數據庫,單擊新建查詢,創建一個名稱為Documents的表:

代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
create table Documents
(
SNo int identity,
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文件導入時間

ASP.NET保存PDF、Word和Excel文件到數據庫

第二步:打開Visual Studio,新建一個空網站,命名為“FilesToBinary”

ASP.NET保存PDF、Word和Excel文件到數據庫

第三步:再添加一個新頁面,命名為“Conversion.aspx”

ASP.NET保存PDF、Word和Excel文件到數據庫

在這個頁面我們需要添加TextBox ,FileUpload ,Button這三個控件。

設計界面如圖:

ASP.NET保存PDF、Word和Excel文件到數據庫

當然你也可以在Conversion.apsx文件直接輸入下列代碼:

?
1
2
3
4
5
6
7
8
9
10
11
顯示文件
 <asp:TextBox ID="txtfilename" runat="server">
 </asp:TextBox>
<br />
 
選擇文件
<asp:FileUpload ID="FileUpload1" runat="server" />
<br />
 
<asp:Button ID="Button1" runat="server"
Text="導入" OnClick="Button1_Click" />

第四步:控件添加后,雙擊Button,在Conversion.apxs.cs文件添加以下命名空間。

?
1
2
3
4
5
using System;
using System.Web;
using System.Data.SqlClient;
using System.Data;
using System.IO;

然后在Button1_Click編寫代碼,將文件轉換為二進制流,點擊Button后文件便可存到數據庫中。

代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
protected void Button1_Click(object sender, 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 = new SqlCommand(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;
   }
  }
}

運行結果如圖:

ASP.NET保存PDF、Word和Excel文件到數據庫

這時瀏覽文件夾,就可以添加我們的文件了。點擊導入,成功添加。

ASP.NET保存PDF、Word和Excel文件到數據庫

如果選擇了不符合規則的文件后,則會顯示:

ASP.NET保存PDF、Word和Excel文件到數據庫

返回數據庫,這時PDF、Word 和Excel文件已經成功添加到數據庫啦。

ASP.NET保存PDF、Word和Excel文件到數據庫

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 人人最怕九月羊 | 香蕉免费一区二区三区在线观看 | 国产欧美一区二区三区精品 | 无遮免费网站在线入口 | 欧美日韩一区二区综合 | 满城尽带黄金甲大胸片 | 成年女人毛片免费观看中文w | 国产久热精品 | 久久热国产在线视频 | 欧美人体高清在线观看ggogo | jiuse在线| 射18p | 亚洲女bbwxxxx另类 | 免费看一级大片 | jazz中国在线视频 | 午夜理伦片免费 | 精品一区二区三区波多野结衣 | 香蕉人人超人人超碰超国产 | 国产精品每日在线观看男人的天堂 | 国产在线欧美日韩精品一区二区 | 国产综合久久 | 成人精品mv视频在线观看 | 99精品视频只99有精品 | 99久热只有精品视频免费看 | 国产播放啪视频免费视频 | 国产成人综合精品 | 国色天香社区视频免费高清在线观看 | 免费在线视频网站 | 视频一区国产精戏刘婷30 | 九九九九九热 | 91热国内精品永久免费观看 | 国产绿帽| 欧美黑人成人免费全部 | 精品国语对白精品自拍视 | 国产区一二三四区2021 | 亚洲 色 欧美 爱 视频 日韩 | 国产自在自线午夜精品之la | 亚洲日本视频在线观看 | 欧美国产日本高清不卡 | 国产精品久久久久影院色老大 | 天天爱综合网 |