1. 程式人生 > >ASP.NET實現上傳檔案到伺服器

ASP.NET實現上傳檔案到伺服器

   <一>.選擇本地要上傳到伺服器的檔案

  首先要感謝ASP.NET的強大功能,他提供的HTML控制元件,使得我們很容易的通過一個對話方塊來選擇要上傳的檔案。
    當然你的瀏覽器也必須是IE 3.02 或者Netscape 3.0版本或者比這二者版本高的瀏覽器。通過下列語句就可以完成
    選擇本地一個檔案的工作:


  <二>.為了成功完成檔案上傳工作,在Form中的編碼必須用 multipart/form-data; , 而不用From的預設編碼
            application/x-www-form-urlencoded。具體程式碼如下:


  <三>.獲得上傳的檔名稱及對磁碟的若干操作

  為了獲得上傳的檔名稱,必須要引入一個名稱空間( NameSapce ) --System.IO。此名稱空間裡面定義了許多關於檔案及磁碟操作的類,在本軟體中就是通過這些類的某些方法和屬性來完成軟體中的一些功能。

  (1). 獲得上傳檔案的名稱

  使用Path類中的GetFileName方法,具體如下:
    lstrFileName = loFile.PostedFile.FileName
  ' 注: loFile.PostedFile.FileName 返回的是通過檔案對話方塊選擇的檔名,
  這之中包含了檔案的目錄資訊
    lstrFileName = Path.GetFileName ( lstrFileName )
  ' 去掉目錄資訊,返回檔名稱

  (2). 判斷上傳目錄是否存在,不存在就建立

  建立目錄要使用到Directory類中的 CreateDirectory 方法,判斷目錄是否存在要用到 Directory 類中的Exists方法。具體如下:

      If ( not Directory.Exists( lstrFileFolder ) ) Then
        Directory.CreateDirectory ( lstrFileFolder )
       End If
 ' 注:lstrFileFolder是使用者填入的目錄名稱,或者是預設的目錄名稱

  <四>.上傳選定檔案到伺服器上

  在前面工作都已經完成以後,就可以上傳檔案了,上傳檔案相對比較簡單,就用下面2行語句就可以完成上傳工作。

    lstrFileNamePath = lstrFileFolder & lstrFileName
   ' 得到上傳目錄及檔名稱
    loFile.PostedFile.SaveAs ( lstrFileNamePath )
   '上傳檔案到伺服器

  <五>.獲得並顯示上傳檔案的屬性

     FileName.Text = lstrFileName
    ' 獲得檔名稱
     FileType.Text = loFile.PostedFile.ContentType
    '獲得檔案型別
     FileLength.Text = cStr ( loFile.PostedFile.ContentLength )
    '獲得檔案長度
     FileUploadForm.visible = false
     AnswerMsg.visible = true
    '顯示上傳檔案屬性

   以上就是本軟體在編寫時的一些比較重要的地方。

你可以在程式中判斷使用者上傳的檔案型別:
-----------------------
'獲得檔案型別
FileType.Text = loFile.PostedFile.ContentType
-----------------------
然後決定是接受還是拒絕。

相關推薦

ASP.NET實現檔案伺服器

   <一>.選擇本地要上傳到伺服器的檔案  首先要感謝ASP.NET的強大功能,他提供的HTML控制元件,使得我們很容易的通過一個對話方塊來選擇要上傳的檔案。    當然你的瀏覽器也必須是IE 3.02 或者Netscape 3.0版本或者比這二者版本高的瀏覽器。通過下列語

ASP.net實現APK檔案並且下載APK

前言:文中所講僅為個人學習使用過程中的一些經驗和想法,望多提意見。 一,實現上傳APK檔案的功能 介面cs.html程式碼: <strong> </strong><span style="font-weight: bold; white-sp

asp.net(c#)檔案時檢測檔案型別方法小結

using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using Syst

[Asp.net] MVC5 檔案

控制器名 UploadTest裡面新兩個Action, 分別為Upload()和SaveAs()using System; using System.Collections.Generic; using System.Linq; using System.Web; using

Javascript與asp.net 實現Ajax多檔案無重新整理

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w

ASP.NET Core 檔案 超簡單教程

示例原始碼下載地址 專案地址 https://dev.tencent.com/u/whuanle/p/asp.netcore_file_upload/attachment  建立應用程式 開啟VS 2017    --新建 ASP.NET Core Web 應用程式     --Web 應用程式(模型檢

c#,Asp.net,dtcms檔案失敗,錯誤程式碼:http,Http error 404 解決方案

第一步:修改系統上傳配置: 控制面板》系統設定》檔案上傳設定 第二步 :修改web.config <!--maxRequestLength就是檔案的最大字元數,最大值不能超過2個G左右,executionTimeout是超時時間--> 

c# asp.net uploadify 檔案 出現的 HTTP 404 問題

公司有個專案 要求上傳附件大小限制在50MB,原本以為可以輕鬆搞定。在編譯模式下可以上傳大檔案,可是在IIS7下(自己架的伺服器),一上傳大的檔案就會出現 Http 404錯誤,偶爾有的檔案還有IO. error錯誤。一直搞不明白,在網上搜索大概瞭解上傳控制元件分為兩種上傳模式: 1,將檔案一次性讀到記憶體

.NET Core API框架實戰(三) 使用Swagger文件實現檔案

介紹 在Swagger中利用 IOperationFilter 操作來實現檔案上傳 檔案上傳 1、介紹  寫過介面的朋友都知道,除錯、維護介面是一件非常重要的一件事;swagger是一款非常不錯的介面文件工具,那麼在本期中,我們就用swagge

解決 [Asp.net]Uploadify檔案 報Http error 404 問題

引言 之前使用Uploadify做了一個上傳圖片並預覽的功能,今天在專案中,要使用該外掛上傳大檔案。之前弄過上傳圖片的demo,就使用該demo進行測試。可以檢視我的這篇文章: [Asp.net]Uploadify所有配置說明,常見bug問題分析 。 大檔案上傳 第一步:修改uploadify引數

Asp.net文件超過了最大請求長度

默認值 stl 文件 style 解決方案 div exec .net 求長 錯誤消息:超過了最大請求長度 錯誤原因:asp.net默認最大上傳文件大小為4M,運行超時時間為90S。 解決方案 1. 修改web.config文件可以改變這個默認值

bbs專案富文字編輯器實現檔案到media目錄

media目錄是在project的settings中設定的,static目錄是django自己使用的靜態檔案的上傳目錄,media目錄是使用者自定義上傳檔案的目錄 # Django使用者上傳的檔案都放在media目錄下 MEDIA_URL = "/media/" MEDIA_ROOT = os.pat

使用第三方元件實現檔案

使用第三方元件實現上傳檔案功能需要在專案lib下目錄匯入兩個Jar包(commons-fileupload 和  commons-io) commons-io下載地址:http://commons.apache.org/proper/commons-io/download_i

tornado+vue實現檔案

要用tornado+vue寫一個後臺管理系統,記錄一下遇到檔案上傳時候的步驟: 1.Form表單裡的程式碼:(這裡是使用的餓了麼表單元件) <el-form-item label="頭像"> <el-upload

win2008 r2 搭建FTP服務實現檔案

如何使用FTP傳輸檔案到伺服器 Win10開啟FTP與配置(完整無錯版)   一、控制面板》程式》開啟或關閉windows功能     二、安裝IIS服務   三、開始》管理工具》計算機管理

Windows 的java客戶端實現檔案到Linux的Hadoop叢集(注意ip和埠是否一致)

我這幾天一直在學大資料,處於入門階段,然後老師的視訊中教學有用windows的java客戶端上傳檔案到Linux的Hadoop叢集, 但是這邊出BUG了一直上傳不上去,執行程式後一直沒反應。。。。弄了幾天(雖然這幾天在做前端專案~~~) 然後問群裡的大佬,他們說應該是ip和埠

基於springMVC+AJAX+bootstraptable實現檔案和客戶端分頁

1 首先看一下上傳表格程式碼,主要程式碼如下: <form method="post" enctype="multipart/form-data" id="orderform"> <div class="col-md-6 col-sm-12"&

使用form表單同時實現檔案和提交文字資料

使用form表單同時實現上傳檔案和提交文字資料,此示例中在後臺將檔案上傳到阿里的oss儲存伺服器中 申請oss相關賬號: endpoint = "http://oss-cn-qingdao.aliyuncs.com"; accessKeyId = "key"; accessKeySecret = "secr

vue axios 實現檔案

1 新建一個用來上傳檔案的axios,不同普通請求後臺的axios,因為上傳檔案不能手動設定請求頭      var uploadAxios = axios.create({}),       Vue.prototype.$uploadAxios = uploadAxio

ajax實現檔案和form表單檔案的區別

在使用form表單的時候,一旦點選提交觸發submit事件,一般會使得頁面跳轉,頁面間的跳轉等行為的控制權往往在後端,後端會控制頁面的跳轉及資料傳遞,但是在某些時候不希望頁面跳轉,或者說想要將控制權放在前端,通過js來操作頁面的跳轉或者資料變化。 一般這種非同步的操作,我們