利用.NET的File控件上传文件的最终解决方案(个人版) --转自GoodHY

更改 json 文件里面的 label 标签值 效果图(“label”由“01”“02”…全部变成“10”) 完整代码 import json json_in="C:/Users/Chengguo/Desktop/00000001.json"#原json文件路径 json_out="C:/Users/Chengguo/Desktop/00000002.json"#修改后json文件路径 j=open(json_in).read()#json文件读入成字符串格式 jj=json.loads(j)#载入字符串,json格式转python格式 pri 阅读详情

在遍历了csdn中所有关于上传大文件的帖子以后,写了这片垃圾。(:-))
上传大文件,有好几种方法:
1、思归的HttpWorkerRequest方法,太难,看不懂:-(
2、利用第三方的控件 AspNetUpload 要钱!!算了,咱还是喜欢免费的。
3、修改web.config文件,但是不能捕获错误。
4、通过ftp的方式上传。服务器需要提供ftp服务。

没辙,只好选第三种方式,谁让咱太蠢了呢!(太蠢了,没有关系,要多吃鱼,听说吃鱼能聪明点。)

那就仔细专研第三种方式吧!

修改Webcong文件:
<system.web>
<httpRuntime maxRequestLength="40690"
         useFullyQualifiedRedirectUrl="true"
         executionTimeout="6000"
         useFullyQualifiedRedirectUrl="false"
     minFreeThreads="8"
     minLocalRequestFreeThreads="4"
      appRequestQueueLimit="100"
      enableVersionHeader="true"
         />
</system.web>

其中与上传有密切关系的是:
maxRequestLength
   指示 ASP.NET 支持的最大文件上载大小。
   该限制可用于防止因用户将大量文件传递到该服务器而导致的拒绝服务攻击。
   指定的大小以 KB 为单位。
   默认值为 4096 KB (4 MB)。

executionTimeout
   指示在被 ASP.NET 自动关闭前,允许执行请求的最大秒数。
   单位为秒,在上传大的文件时把这个设的大一些。


如果服务器内存512M,已可上传大小160M的文件。(没试过,csdn上众帖子的一致意见。)

到这里web.config的设置就已经结束。
可是一旦上传文件的大小超过了这个设置的文件大小范围就会发生如下错误:
该页无法显示
您要查看的页当前不可用。网站可能遇到技术问题,或者您需要调整浏览器设置。

虽然解决不了,那也要捕获这个错误啊!怎么办呢?
最近吃了几条鱼,想了想,由于这个错误是由file控件引发的前台错误,所以在后台想利用try...catch来捕获是行不通的。
于是想到了利用.NET的错误捕获页面的机制来处理。可行哦。

1、先设置web.config
  <customErrors mode="On"/>
2、新建一个error.aspx 文件,专门用来捕获错误的。
3、在上传文件的aspx页面的前台页面里添加page指令。ErrorPage="UploadError.aspx"
4、在error.aspx中添加一些代码来判断错误信息是否是file引起的前台错误。
   public class UploadError : System.Web.UI.Page
   {
    private void Page_Load(object sender, System.EventArgs e)
    {
     Exception ex = Server.GetLastError();
     if (ex != null)
     {
      Response.Redirect("../error.aspx");
     }
     else //前台错误ex为空值
     {   
      Response.Redirect("uploadexcel.aspx?err=1"); //重新跳转到上传页面,加上err参数是为了显示错误信息
     }
    }
    
5、显示错误提示。
   public class uploadexcel : System.Web.UI.Page
   {
    private void Page_Load(object sender, System.EventArgs e)
    {
     if (Request["err"] == "1")
     {
     Page.RegisterStartupScript("budget","<script language = javascript>alert('Upload file has failed ! File size is too large !')</script>");
     }
    }
   }
   
6、搞定收工。(这鱼没有白吃啊)

经过上述修改,现在的上传变成了,程序指定文件大小,如果超过,则弹出错误提示。
这样一来,就好多了,最起码自己能接受了,跟用户解释也不太费劲了。 

算法面试八股文『 基础知识篇 』 个人整理的算法面试基础知识八股文,内容较详细。 阅读详情

相关推荐

Android13配置selinux让system应用可读sys,proc,SN号

Android13预置的system应用,需要读/sys, /proc目录,读(SN)serial number号, 需要修改selinux配置,否则会报avc错.其修改方法会比Android11复杂一些.。

zmlovelx(帅得不敢出门 程序员群31843264) 2654

我的.Net学习之路二——File文件基本操作

一、新建文件 //创建一个文件 File.Create(@"C:\Users\jztx\Desktop\FileDemo.txt"); Console.WriteLine("创建成功"); Console.ReadKey();二、删除文件 //删除一个文件 Fi

剑指天下 646

统信UOS/麒麟Kylin OS下利用pyenv实现Python多版本开发环境搭建指南

本文详细介绍了在统信UOS和麒麟Kylin OS国产操作系统下使用pyenv搭建Python多版本开发环境的完整指南。从系统环境准备、pyenv定制安装到Python版本编译实战,提供了针对国产CPU架构的特殊优化方案和常见问题解决方法,帮助开发者高效管理不同Python版本需求。

sea99的博客 1052

.Net C# File FileStream 文件操作

.Net C# File FileStream 文件操作

u010992421的专栏 1813

RSA 2048/4096 签名校验算法

RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。 RSA是目前最有影响力和最常用的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。 今天只有短的RSA钥匙才可能被强力方式解破。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能...

qq_38769551的博客 9500

2019年数学建模美赛经验总结

北京时间2019年1月29号上午9时,数模美赛结束。美赛结束已经10多天了,我在这次竞赛中负责建模和编程,趁现在记忆还比较清晰,写下这篇博客记录第一次参加数学建模美赛的经历。 补更:2019年4月20日公布成绩,笔者最终获得了美赛一等奖 目录 1、基本情况 2、选题 3、分工合作 4、论文写作 5、建模 6、编程 7、入门资源 ...

Smallactive 7万+

.Net File类的操作

//File类的常用操作方法 //File类的常用操作方法 //File.Exists //检测是否存在该文件 Exists //File.Create //创建一个文件 Create //File.Delete //删除指定的文件 //File.Move //剪切指定的文  File.Create(@"C:\Users\...

weixin_33915554的博客 213

SAP S4 HANA:按单生产(MTO)场景中的COGS分割

本文介绍了SAP S/4HANA中提供的各种选项,以在销售订单/商品是按订单生产(以下称为MTO)生产流程中的成本对象时,在基于帐户的COPA环境中报告COGS分割信息。

adam915的博客 1191

【.Net实用方法总结】 整理并总结System.IO中File类及其方法介绍

本文主要介绍System.IO命名空间的File 类,介绍其常用的方法和示例说明

baidu_33146219的博客 2万+

SerDes系列之 SSC扩频时钟技术

扩频时钟,又称展频(SSC-Spread Spectrum Clocking),当前PCIE、DDR、USB等几乎所有的高速接口都支持SSC的功能。电子工程师在日常的电气测试中经常与之接触,在电磁传导和辐射发射验证过程中,经常需要使用到芯片的SSC功能,它的物理表现形式,就是信号的比特率会在一个很小的范围内浮动,多见于周期性变化的时钟信号。

一只豌豆象的博客 3442

基于Python的军事装备信息爬虫实战:Scrapy+Playwright+智能反反爬技术

本文将详细介绍如何使用Python构建一个高效的军事装备信息爬虫系统。我们将从基础的HTTP请求开始,逐步深入到使用Scrapy框架、Playwright浏览器自动化以及最新的反反爬技术。文章包含完整的代码实现、性能优化策略以及数据处理方案,旨在为读者提供一个全面的军事信息爬取解决方案。关键词:Python爬虫、军事装备、Scrapy、Playwright、反反爬。

2201_76125261的博客 1155

利用.NET的File控件上传文件的最终解决方案(个人版)

在遍历了csdn中所有关于上传大文件的帖子以后,写了这片垃圾。(:-))上传大文件,有好几种方法:1、思归的HttpWorkerRequest方法,太难,看不懂:-(2、利用第三方的控件 AspNetUpload 要钱!!算了,咱还是喜欢免费的。3、修改web.config文件,但是不能捕获错误。4、通过ftp的方式上传。服务器需要提供ftp服务。没辙,只好选第三种方式,谁让咱太蠢了呢!(太蠢了,

一个人追求的目标越高,就越能激发出他的才能. 4051

麒麟服务器操作系统QT系列软件工具手册

对Qt提供的开发工具进行了一系列的优化之后,在日常的修复bug和维护框架的过程中,桌面研发对Qt的基础软件库也进行了部分优化工作,包括qtbase、qtwayland、qtscript、qt4-x11等Qt基础组件,涉及的Qt框架版本主要涉及到5.9和5.12两个版本。qt 的翻译,是由 ts 文件生成 qm 文件然后进行翻译,国产操作系统上qt 的翻译是由单独的qttranslations包中进行维护,其次部分汉化问题也是qt组件维护工作的一部分,qt的翻译机制如图4-7所示。

太极淘的博客 543

【.NET Core】深入理解IO之File类

C#中操作文件的最基本类就是IO类,里面就定义了很多衍生类和方法给我们对文件进行处理、转换、执行等操作;其中流分为写入流(输入流)和读取流(输出流),输出流用于对文件进行读取流操作,输入流用于对文件进行写入数据;

记录总结工作过往 2294

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

C# MVC中使用File出现问题

在mvc框架下,使用post请求,将文件使用File的方式将文件输出 在其他的地方引用File类的出现了上述问题不可调用的成员File不能像方法一样使用,这问题在网上找了很久都没有答案,最后发现,这File要在继承了Controllers类中去使用,因为它是 ...

小猪快跑 2757

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

.NET后端返回File文件,及前端处理直接在浏览器下载

/ 创建临时URL并分配给一个链接。//需要对汉字编码否则会可能会乱码。//获取header中的内容。// 创建Blob对象。//修改utf8编码,不然可能汉字会乱码。

qq_39788123的博客 1744

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

最全面的.NET【文件上传】总结(含前端js/vue)

本文包含.NET Core、.NET Framework、及Web前端、三端的文件上传代码,是全网最全面的文件上传知识总结。

.Net技术、软件架构、人工智能、数字化转型、DeveloperSharp、微服务、工业互联网、智能制造 724

.net web API的文件传输(上传和下载)客户端winform

防止反复造轮子,直接上代码。上传下载代码看上面就够了,Global中全局注册。

csdn2990的博客 1442

.NET(C#) File类的常用方法

MSDN的File类 File类在MSDN:https://msdn.microsoft.com/zh-cn/library/system.io.file_methods(v=vs.110).aspx FileHelper.cs FileHelper提供的功能: 递归获取指定目录下所有的文件 获取指定目录下所有的子目录 using System; using System...

weixin_34306676的博客 315

C#文件操作

文件系统 下面的类用于浏览文件系统和执行操作,比如移动,复制和删除文件。 1. System.MarshalByRefObject 这个是.NET类中用于远程操作的基对象类,它允许在应 用程序域之间编组数据; 2. FileSystemInfo 这是表示任何文件系统对象的基类; 3. FileInfo和File 这些类表示文件系统上的文件; 4. DirectoryInfo和Directory 表示文件系统上的文件夹; 5. Path 包含用于处理路径名的一些静态...

qq_41603955的博客 1541

.net System.IO(三)File类

File是.netI/O中比较重要的部分,几乎所有的io都离不开它。所以我们来了解了解它,我这里介绍一下。 我将从文件的创建、读、写、设置并获取文件信息或属性以及操作文件这五个方面来说。 1,创建 创建里面有这么几个方法。这里的创建不包括执行写的操作时候,发现文件不存在而创建文件这种情况,我们就说那总直接创建的。 用代码举例子 string path = @"C:\Users\MY\Documents\Visual Studio 2015\Projects\test2\io\"; if(!File.Exis

weixin_43932432的博客 915

.Net用FileUpload实现图片预览

.Net实现图片预览的方式有很多,可以用ajax异步实现,可以用juqre

码农之路 853

.net 用file上传文件到服务器方法

后台 public  void Btn_click(){    HttpFileCollection files = HttpContext.Current.Request.Files;         HttpPostedFile postFile = files["Filetype"];         string fileName = Path.GetFileName(postFi

浮萍的博客 4343

.net大文件上传控件

在 Asp.Net批量上传控件:HtmlInputFiles 一文中有朋友向我推荐了NeatUpload上传控件,于是花了点时间对该控件进行了简单的学习,感觉这个控件真的不错,不但能够支持大文件上传,而且还有上传进度条,更重要的是NeatUpload控件是为数不多的支持大文件上传的免费控件,废话不说了,下面先介绍NeatUpload控件如何使用。   一、前期准备   1、下载ne

work_fei的专栏 675

ASP.NET中的FILE对象总结 (藏)

在ASP.NET中引入了名字空间,其中文件操作对应的名字空间是System.IO。名字空间和动态链接库有些类似,但是名字空间在整个.net系统中都可以应用。在ASP.NET的页面中可以使用<%@import namespace=...%>来引用名字空间。在vb6中采用fso对文件进行操作,在asp.net中的文件对象和fso很相似。这里我介绍一下file对象:file对象的作用主要是创...

weixin_30394981的博客 299
上一篇: runTime error 服务器错误
下一篇: 如何在水晶报表中动态添加字段
CS_D_N
博客等级 码龄21年 1粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值