• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
HS.H °
财富来源于拼搏, 命运取决与奋斗!
博客园    首页    新随笔    联系   管理    订阅  订阅

javascript 获取文件大小

Javascript获取本地文件大小

(转载自网上,作者佚名)

于web开发人员来说文件上传文件是经常遇到得,判断文件大小也是不可缺少,在这里主要介绍一下javascript判断文件大小得几种常见得方法。

第一种是应用ActiveX控件得实现,例如:

Javascript代码 
<script type="text/javascript">    
function getFileSize(filePath)    
{    
   var fso = new ActiveXObject("Scripting.FileSystemObject");    
   alert("文件大小为:"+fso.GetFile(filePath).size);    
}    
</script>    
<body>    
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">    
</body> 
<script type="text/javascript">
function getFileSize(filePath)
{
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   alert("文件大小为:"+fso.GetFile(filePath).size);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">
</body>


这种方法可以实现,也容易被开发人员想到,但是唯一不足之处是有安全提示,当然把文件名改为.hta则会屏蔽掉安全提示,但很难被需求所取。不推荐,也不多说

下面主要谈谈另一种方式,在html标签中有一个不为一般开发人员“深”知得img标签,先来说下它有得属性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....还有一些常用得属性就不列出来了,在这里我们说一下"dynsrc"这个属性:dynsrc可以用来插入各种多媒体,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url为音频或视频文件及其路径,可以是相对路径或绝对路径。

示例:<img dynsrc="xxxx.mp3">

这样我们就可以根据dynsrc动态赋值任何类型文件得路径,在javascript中根据Image对象本身得fileSize属性来得到文件得大小。当然Image对象还有其它得几个属性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代码如下:


Javascript代码 
<script type="text/javascript">    
function getFileSize(filePath)    
{    
   var image=new Image();    
   image.dynsrc=filePath;    
   alert(image.fileSize);    
}    
</script>    
<body>    
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this)">    
</body> 
<script type="text/javascript">
function getFileSize(fileObj)
{
   var image=new Image();
   image.dynsrc=fileObj.value;
   alert(image.fileSize || fileObj.files[0].fileSize);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">
</body>


作者:wangqc
出处:http://www.cnblogs.com/wangqc/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-wangqc。

posted @ 2013-08-06 09:28  没有终点的列车  阅读(2975)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3