广告
返回顶部
首页 > 资讯 > 后端开发 > ASP.NET >ASP.NET实现文件上传
  • 978
分享到

ASP.NET实现文件上传

2024-04-02 19:04:59 978人浏览 独家记忆
摘要

本文实例为大家分享了asp.net实现文件上传的具体代码,供大家参考,具体内容如下 .NET中C/S和B/S上传文件不同 B/S中文件上传和C/S中的文件上传性质完全不一样 在C/S

本文实例为大家分享了asp.net实现文件上传的具体代码,供大家参考,具体内容如下

.NET中C/S和B/S上传文件不同

B/S中文件上传和C/S中的文件上传性质完全不一样

在C/S中文件上传基本上的原理是:将客户端计算机上的目标文件通过Socket网络将文件发送至目标服务器端计算机,然后将接受到的数据转换为原始文件

文件–转成字节流–发送到服务器–将字节流转成文件–保存

而B/S中文件上传指的是在客户端浏览器上,将目标文件选择好之后,通过网络将文件发送至目标服务器计算机,然后将接收到的文件保存在服务器计算机上。

B/S上传文件

页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WEBFORM1.aspx.cs" Inherits="UpLoadFileDemo.WebForm1" %>
<!DOCTYPE html>
<html xmlns="Http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            请选择要上传的文件:<asp:FileUpload ID="fileup" runat="server" />
            <asp:Button ID="btnUpload" runat="server" Text="开始上传" OnClick="btnUpload_Click" />
            <asp:Literal ID="lblMsg" runat="server"></asp:Literal>
        </div>
    </form>
</body>
</html>

事件:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
namespace UpLoadFileDemo
{
   public partial class WebForm1 : System.Web.UI.Page
   {
       protected void Page_Load(object sender, EventArgs e)
       {

       }

       protected void btnUpload_Click(object sender, EventArgs e)
       {
           //【1】判断文件是否存在
           if (fileup.HasFile)
           {
               //【2】获取文件的大小,判断是否符合设置要求
               double fileLength = fileup.FileContent.Length / (1024.0*1024.0);
               //获取配置文件中对上传文件大小的限制
               double limeitLength = Convert.ToDouble(ConfigurationManager.AppSettings["fileMaxLength"])/1024.0;
               if (fileLength>limeitLength)
               {
                   lblMsg.Text = $"上传文件不能超过{limeitLength}MB";
                   return;
               }
               // 【3】获取文件名,判断文件扩展名是否符合要求
               string fileName = fileup.FileName;
               //判断文件是否exe文件
               if (fileName.Substring(fileName.LastIndexOf(".")).ToLower()==".exe")
               {
                   lblMsg.Text = "不能上传应用程序";
                   return;
               }
               //【4】修改文件名称
               //一般情况下,上传的文件服务器中保存时不会采取原文件名,因为客户端用户很庞大,要保证每个用户端上传文件不能被覆盖
               fileName = DateTime.Now.ToString("yyyyMMddhhmmSSMs")+"_"+fileName; //年月日时分秒毫秒_原文件名 防止文件绝对覆盖
               //【5】获取服务器中存储文件的路径
               //"~"代表应用程序的根目录,从服务器的根目录找  
               //"~" Shift键+左上角的"`"键
               string path = Server.MapPath("~/UpFile");
               //【6】上传文件
               try
               {
                   fileup.SaveAs(path+"/"+fileName);//参数:要上传到的文件完整路径,路径+"/"+文件名
                   lblMsg.Text = "文件上传成功";
               }
               catch (Exception ex)
               {
                   lblMsg.Text = $"文件上传失败{ex.Message}";
               }

           }
       }
   }
}

配置文件:

<?xml version="1.0" encoding="utf-8"?>
<!--
  有关如何配置 ASP.net 应用程序的详细信息,请访问
  https://Go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
  <appSettings>
    <!--配置上传文件最大的字节数:kb单位--><!--30MB-->
    <add key="fileMaxLength" value="30720"/>
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.6.1"/>
    <!--httpRuntime中可以设置请求的最大字节数maxRequestLength-->
    <httpRuntime targetFramework="4.6.1" maxRequestLength="40960"/>
  </system.web>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CodeDom.Providers.dotnetCompilerPlatform.CSharpcodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
  </system.codedom>
</configuration>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: ASP.NET实现文件上传

本文链接: https://www.lsjlt.com/news/165250.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ASP.NET实现文件上传
    本文实例为大家分享了ASP.NET实现文件上传的具体代码,供大家参考,具体内容如下 .NET中C/S和B/S上传文件不同 B/S中文件上传和C/S中的文件上传性质完全不一样 在C/S...
    99+
    2022-11-13
  • ASP.NET实现文件上传功能
    本文实例为大家分享了ASP.NET实现文件上传功能的具体代码,供大家参考,具体内容如下 1、搭建网站结构 2、编写网页文件 创建一个Web窗体UploadFile和UpFile文件...
    99+
    2022-11-13
  • asp.net core webapi文件上传功能的实现
    最近开发一个新项目,使用了asp.net core 2.0,采用webapi开发后台,postgresql为数据库。最先来的问题就是上传文件的问题。 POST文件的一些坑 使用...
    99+
    2022-06-07
    net ASP.NET webapi core ASP
  • ASP.NET MVC使用JSAjaxFileUploader插件实现单文件上传
    先看效果: 上传文件显示进度条: 停止上传按钮和关闭缩略图按钮: 限制上传文件的类型: 限制上传文件的尺寸: 上传成功后显示缩略图、文件名以及回传信息: 点击界面上的删除按...
    99+
    2022-11-13
  • asp.net中表单上传功能如何实现ajax文件异步上传
    这篇文章主要为大家展示了“asp.net中表单上传功能如何实现ajax文件异步上传”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“asp.net中表单上传功能如何...
    99+
    2022-10-19
  • ASP.NET Core中怎么实现文件上传与下载
    这篇文章给大家介绍ASP.NET Core中怎么实现文件上传与下载,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.使用模型绑定上传文件(官方例子)官方机器翻译的地址:https://docs.microsoft.co...
    99+
    2023-06-19
  • Asp.Net上传文件并配置可上传大文件的方法
    ASP.NET 包含两个控件可以使用户向网页服务器上传文件。一旦服务器接受了上传的文件数据,那么应用程序就可以进行保存,进行检查或者忽略它。 HtmlInputFile -...
    99+
    2022-11-13
  • Spring boot实现文件上传实例(多文件上传)
    文件上传主要分以下几个步骤:(1)新建maven java project;(2)在pom.xml加入相应依赖;(3)新建一个表单页面(这里使用thymleaf);(4)编写controller;(5)测试;(6)对上传的文件做一些限制;(...
    99+
    2023-05-31
    spring boot 文件上传
  • Node.js实现文件上传
    在工作中碰到了这样的需求,需要用nodejs 来上传文件,之前也只是知道怎么通过浏览器来上传文件, 用nodejs的话, 相当于模拟浏览器的行为。 google 了一番之后, 明白了浏览器无非就是利用htt...
    99+
    2022-06-04
    文件上传 Node js
  • vue实现文件上传
    本文实例为大家分享了vue实现文件上传的具体代码,供大家参考,具体内容如下 记录问题,方便回顾 1、使用elementUI的 el-upload插件进行上传。 2、使用input。 ...
    99+
    2022-11-13
  • PHP实现文件上传
    上传文件的必备三个条件: 上传到后台的文件 method = "post";(不可以为get方法) enctype = "multipart/form-data";(注意哦,是data,不是date) 三者缺一不可 后台PHP的$_FIL...
    99+
    2023-09-02
    php 服务器 开发语言
  • asp.net如何使用ajaxFileUpload插件上传文件
    这篇文章主要讲解了“asp.net如何使用ajaxFileUpload插件上传文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“asp.net如何使用ajaxFileUpload插件上传文件...
    99+
    2023-06-22
  • ASP.NET 上传文件到共享文件夹的示例
    目录上传文件代码  web.config   工具方法    常量  具体上传文件代码创建共享文件夹参考资料 上传文件代码   web.config  <!--上...
    99+
    2022-11-12
  • ASP.NET 上传文件导入Excel的示例
    目录前言代码实战具体的xml文件具体的Excel模板前言   本文对应的场景是导入Excel数据,Excel对应的字段都配置在xml文件中。截图如下: 代码实战   工具类  ...
    99+
    2022-11-12
  • ASP.NETCore实现多文件上传
    创建应用程序 打开VS 2017   --新建 ASP.NET Core Web 应用程序     --Web 应用程序(模型视图控制器) 程序名字、路径,默认即可 删除不必要的内...
    99+
    2022-11-12
  • Python+django实现文件上传
    1、文件上传(input标签) (1)html代码(form表单用post方法提交) <input class="btn btn-primary col-md-1" style="margin:...
    99+
    2022-06-04
    文件上传 Python django
  • Java实现FTP文件上传
    目录一、配置FTP文件服务器 FTP两种模式简介 PORT(主动模式) Passive(被动模式) 1、安装vsftpd 2、配置vsftpd 3、重启启动服务 4、登录二、java...
    99+
    2022-11-12
  • Javaselenium上传文件的实现
    目录下载和安装AutoIt1.打开AutoIt的官网下载下载和安装AutoIt 文件上传是自动化中棘手的部分,目前selenium并没有提供上传的实现api,所以知道借助外力来完成,...
    99+
    2022-11-13
  • asp.net使用ajaxFileUpload插件上传文件(附源码)
    ajaxFileUpload.js 很多同名的,因为做出来一个很容易。 我用的是这个:https://github.com/carlcarl/AjaxFileUpload 下载地址在...
    99+
    2022-11-12
  • SpringMVC 单文件上传与多文件上传实例
    一、简述一个javaWeb项目中,文件上传功能几乎是必不可少的,本人在项目开发中也时常会遇到,以前也没怎么去理它,今天有空学习了一下这方面的知识,于是便将本人学到的SpringMVC中单文件与多文件上传这部分知识做下笔记。二、单文件上传1、...
    99+
    2023-05-31
    springmvc 文件上传 多文件上传
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作