浅谈javascript如何获取文件后缀名


Posted in Javascript onAugust 07, 2020

在上传文件时,常常要对文件的类型即对文件的后缀名进行判断,用javascript可以很容易的做到这一点。用Javascript解析一个带绝对路径的文件名并得到后缀名的方法有很多种,这里列出一种,以供参考。

对于一个带绝对路径的文件名如:D:\Program Files\Notepad++\Notepad++.exe

首先为了避免转义反斜杠出问题,可以用正则表达式来将\或\\替换成#,如:

D:#Program Files#Notepad++#Notepad++.exe

之后以‘#'为分隔符,将字符串分解成数组,得到如下数组:

D:  ProgramFiles  Notepad++  Notepad++.exe

取数组的最后一个即为带后缀的文件名:Notepad++.exe

再以‘.'为分隔符,将这个带后缀的文件名分解成数组,得到如下数组:

Notepad++  exe

然后再取数组的最后一个就可以得到文件的后缀名exe了

代码如下(Win7+IE9测试通过):

//by MoreWindows (http://blog.csdn.net/MoreWindows)
function GetExtensionFileName(pathfilename)
{
	var reg = /(\\+)/g;
	var pfn = pathfilename.replace(reg, "#");
	var arrpfn = pfn.split("#");
	var fn = arrpfn[arrpfn.length - 1];
	var arrfn = fn.split(".");
	return arrfn[arrfn.length - 1];
}

测试代码:

function Test()
{
	var filePath="D:\\Program Files\\Notepad++\\Notepad++.exe";
	alert(GetExtensionFileName(filePath));
}
<input type="button" value="Test" οnclick="Test()" />

点击Test按钮就可以弹出内容为exe的对话框,表示GetExtensionFileName能正确解析带绝对路径的文件名并得到后缀名。

估计这种方法只能在Windows平台下使用吧,在Linux执行下不知道会如何?

 到此这篇关于浅谈javascript如何获取文件后缀名的文章就介绍到这了,更多相关javascript获取文件后缀名内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
使用js在页面中绘制表格核心代码
Sep 16 Javascript
js调用后台、后台调用前台等方法总结
Apr 17 Javascript
JQuery控制Radio选中方法分析
May 29 Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
Jul 27 Javascript
原生js与jQuery实现简单的tab切换特效对比
Jul 30 Javascript
JS绘制生成花瓣效果的方法
Aug 05 Javascript
vue.js入门教程之计算属性
Sep 01 Javascript
微信小程序实战篇之购物车的实现代码示例
Nov 30 Javascript
Node.js中的cluster模块深入解读
Jun 11 Javascript
微信小程序实现tab左右切换效果
Nov 15 Javascript
Node.js npm命令运行node.js脚本的方法
Oct 10 Javascript
vue项目实现分页效果
Mar 24 Vue.js
vue 使用post/get 下载导出文件操作
Aug 07 #Javascript
基于javascript的无缝滚动动画实现2
Aug 07 #Javascript
vue 在methods中调用mounted的实现操作
Aug 07 #Javascript
javascript实现图片轮换动作方法
Aug 07 #Javascript
vue style width a href动态拼接问题的解决
Aug 07 #Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
Aug 07 #Javascript
JavaScript实现与web通信的方法详解
Aug 07 #Javascript
You might like
用ODBC的分页显示
2006/10/09 PHP
dedecms系统常用术语汇总
2007/04/03 PHP
PHP n个不重复的随机数生成代码
2009/06/23 PHP
深入理解PHP之require/include顺序 推荐
2011/01/02 PHP
php取得字符串首字母的方法
2015/03/25 PHP
smarty中常用方法实例总结
2015/08/07 PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
2015/12/19 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
PHP5.5基于mysqli连接MySQL数据库和读取数据操作实例详解
2019/02/16 PHP
ASP小贴士/ASP Tips javascript tips可以当桌面
2009/12/10 Javascript
Google的跟踪代码 动态加载js代码方法应用
2012/11/12 Javascript
js实现弹窗插件功能实例代码分享
2013/12/12 Javascript
js/jQuery简单实现选项卡功能
2014/01/02 Javascript
jQuery瀑布流插件Wookmark使用实例
2014/04/02 Javascript
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
基于javascript实现图片切换效果
2016/04/17 Javascript
jquery层级选择器(匹配父元素下的子元素实现代码)
2016/09/05 Javascript
Node.js检测端口(port)是否被占用的简单示例
2016/09/29 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
js判断iframe中元素是否存在的实现代码
2016/12/24 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
[01:46]新英雄登场
2019/09/10 DOTA
Python中static相关知识小结
2018/01/02 Python
python代码过长的换行方法
2018/07/19 Python
Python操作配置文件ini的三种方法讲解
2019/02/22 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
法人委托书范本
2014/04/04 职场文书
公共场所标语
2014/06/30 职场文书
机械专业求职信范文
2014/07/15 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
佛光寺导游词
2015/02/10 职场文书
肖申克的救赎观后感
2015/06/02 职场文书
太空授课观后感
2015/06/17 职场文书