如何确定给定路径是文件还是文件夹?

时间:2011-04-11 06:10:57

标签: javascript filepath windows-scripting

使用Jscript确定给定路径是文件夹还是文件的最简单方法是什么?

2 个答案:

答案 0 :(得分:2)

你没有说你在什么环境下工作。如果您的意思是JScript环境中的Windows Scripting,那么您可以使用Scripting.FileSystemObject对象:

var fso = new ActiveXObject('Scripting.FileSystemObject');
if (fso.FileExists(path)) {
    WScript.Echo("It's a file!");
} else if (fso.FolderExists(path)) {
    WScript.Echo("It's a folder!");
} else {
    WScript.Echo("It's superman!");
}

答案 1 :(得分:0)

仅凭JavaScript,我知道你不能。但是,如果您知道其扩展名,则可以对文件进行一些验证。这是一个例子。

JS

var pathX = "[?:[a-zA-Z0-9-_\.]+(?:.txt|.sql)"; /* File validation using extension*/

function testRegx(frm){
    var path = frm.testfile.value;

    if(path.toString().match(pathX)){
        alert("Valid");
    } else {
        alert("Invalid");
    }
}

<强> HTML

<form name="testupload">
    <p>
    <input type="file" name="testfile">
    <input type="button" onClick="testRegx(this.form);" value="test">
    </p>
</form>

此技术仍然不是最好的方法,因为您可以篡改文件以更改其扩展名,或者您可以通过在给定的有效文件上添加有效的扩展名来重命名文件。