浅谈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 加载时自动调整图片大小
May 28 Javascript
理解Javascript_05_原型继承原理
Oct 13 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
Oct 14 Javascript
js父页面与子页面不同时显示的方法
Oct 16 Javascript
js与jquery实时监听输入框值的oninput与onpropertychange方法
Feb 05 Javascript
javascript实现当前页导航激活的方法
Feb 27 Javascript
AngularJS中的包含详细介绍及实现示例
Jul 28 Javascript
HTML页面,测试JS对C函数的调用简单实例
Aug 09 Javascript
React Native时间转换格式工具类分享
Oct 24 Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
Jun 08 Javascript
vue-router判断页面未登录自动跳转到登录页的方法示例
Nov 04 Javascript
vue路由权限校验功能的实现代码
Jun 07 Javascript
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
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php 定界符格式引起的错误
2011/05/24 PHP
PHP实现下载功能的代码
2012/09/29 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
开启PHP Static 关键字之旅模式
2015/11/13 PHP
让你的PHP7更快之Hugepage用法分析
2016/05/31 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
Gird事件机制初级读本
2007/03/10 Javascript
window.onload追加函数使用示例
2014/03/03 Javascript
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
详解JavaScript函数
2015/12/01 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
jQuery实现动态给table赋值的方法示例
2017/07/04 jQuery
javascript匿名函数中的'return function()'作用
2018/10/15 Javascript
JS实现获取数组中最大值或最小值功能示例
2019/03/02 Javascript
js中调用微信的扫描二维码功能的实现代码
2020/04/11 Javascript
如何区分vue中的v-show 与 v-if
2020/09/08 Javascript
Python里隐藏的“禅”
2014/06/16 Python
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
2015/04/24 Python
在Linux下使用Python的matplotlib绘制数据图的教程
2015/06/11 Python
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
详解Python with/as使用说明
2018/12/13 Python
Python3 执行Linux Bash命令的方法
2019/07/12 Python
Python中 Global和Nonlocal的用法详解
2020/01/20 Python
使用pygame编写Flappy bird小游戏
2020/03/14 Python
python 日志模块logging的使用场景及示例
2021/01/04 Python
秘书专业自荐信范文
2013/12/26 职场文书
教师先进工作者事迹材料
2014/05/01 职场文书
网站推广策划方案
2014/06/04 职场文书
邹越感恩父母演讲稿
2014/08/28 职场文书
演讲比赛通讯稿
2015/07/18 职场文书
小学班级标语口号大全
2015/12/26 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书