javascript

位置:IT落伍者 >> javascript >> 浏览文章

javascript 得到文件后缀名的思路及实现


发布日期:2022年05月06日
 
javascript 得到文件后缀名的思路及实现
在上传文件时常常要对文件的类型即对文件的后缀名进行判断用javascript可以很容易的做到这一点用Javascript解析一个带绝对路径的文件名并得到后缀名的方法有很多种这里列出一种以供参考

对于一个带绝对路径的文件名如D:Program FilesNotepad++Notepad++exe
首先为了避免转义反斜槓出问题可以用正则表达式来将或替换成#
D:#Program Files#Notepad++#Notepad++exe
之后以‘#为分隔符将字符串分解成数组得到如下数组
D: ProgramFiles Notepad++ Notepad++exe
取数组的最后一个即为带后缀的文件名Notepad++exe
再以‘为分隔符将这个带后缀的文件名分解成数组得到如下数组
Notepad++ exe
然后再取数组的最后一个就可以得到文件的后缀名exe了
代码如下(Win+IE测试通过)

复制代码 代码如下:
//by MoreWindows
function GetExtensionFileName(pathfilename)
{
var reg = /(+)/g;
var pfn = pathfilenamereplace(reg "#");
var arrpfn = pfnsplit("#");
var fn = arrpfn[arrpfnlength ];
var arrfn = fnsplit("");
return arrfn[arrfnlength ];
}
//by MoreWindows
function GetExtensionFileName(pathfilename)
{
var reg = /(+)/g;
var pfn = pathfilenamereplace(reg "#");
var arrpfn = pfnsplit("#");
var fn = arrpfn[arrpfnlength ];
var arrfn = fnsplit("");
return arrfn[arrfnlength ];
}


测试代码

复制代码 代码如下:
function Test()
{
var filePath="D:Program FilesNotepad++Notepad++exe";
alert(GetExtensionFileName(filePath));
}
<input type="button" value="Test" onclick="Test()" />
function Test()
{
var filePath="D:Program FilesNotepad++Notepad++exe";
alert(GetExtensionFileName(filePath));
}
<input type="button" value="Test" onclick="Test()" />


点击Test按钮就可以弹出内容为exe的对话框表示GetExtensionFileName能正确解析带绝对路径的文件名并得到后缀名
估计这种方法只能在Windows平台下使用吧在Linux执行下不知道会如何?

               

上一篇:子窗体与父窗体传值示例js代码

下一篇:用JavaScript修改CSS属性