<httpRuntime executionTimeout="3600" maxRequestLength="1048576"/> int fileLength = this.FileUpload1.PostedFile.ContentLength; function getFileSize(fileName) { var fso=new ActiveXObject('Scripting.FileSystemObject'); var file =fso.GetFile(fileName); return file.Size; } </SCRIPT>
修改如下:在<system.web></system.web>中添加:
<httpRuntime maxRequestLength="51200" executionTimeout="600"/>
2:程序中就直接用
Request.Files[0].ContentLength //0是代表第一个要上传的文件,是个索引
或FileUpload1.PostedFile.ContentLength得到大小
在判断就行~~
{
return "Erro:上传图片文件大于1M!";
}具体的上传代码:http://www.dysdn.cn/news-115.aspx
不信可以试试
if(upFile.PostedFile.ContentLength/1024 < abc)
{
//执行的代码 }
else
{
string js=@"<script language=javascript>alert('失败!上传的文件大于规定的4M!')</";
js+="script>";
Page.RegisterStartupScript("kkq99",js);
}
默认只能上传4096KB(即4M)大小的文件,改变大小需要修改Web.config 。大于4M时根本到不了页面代码就报错了,但我需要不修改webconfig配置文件和更改浏览器设置的实现
{
return "Erro:上传图片文件大于1M!";
}
<script>
function ss()
{
var obj = document.getElementById("File1");
if(obj.value=="")
{
alert("请选择一个文件");
return false;
}
else
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file = fso.GetFile(obj.value);
if(file.Size>1024*1024*4)
{
alert("上传文件必须小于4M");
return false;
}
else
return true;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<input id="File1" type="file" />
<asp:Button ID="Button2" runat="server" Text="上传" OnClientClick="return ss();"/>
</form>
</body>
</html>
个人感觉是比较好的解决方案如果直接上传文件,通过服务器来判断,
会有一个延时等待的问题,易用性不好,也给服务器造成了负担在客户端用ActiveX来分析文件,速度快,也不浪费资源,前提是是得安装了此控件而其这也是断点续传大文件的一种方案!
executionTimeout="3600"
maxRequestLength="1048576"/>
int fileLength = this.FileUpload1.PostedFile.ContentLength;
function getFileSize(fileName)
{
var fso=new ActiveXObject('Scripting.FileSystemObject');
var file =fso.GetFile(fileName);
return file.Size;
}
</SCRIPT>
我可以告诉你了,这个问题找wuyq111吧,看看他怎么说。估计他除了上面的回复外,会给你webservice或者ftp之类的回复