首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JavaScript 判斷資料夾是否存在:僅限 IE ActiveXObject 方案

     編輯:程式設計綜合問答

安全性限制

瀏覽器沙箱機制禁止網頁腳本直接訪問本地檔案系統。僅 IE 支援 ActiveXObject("Scripting.FileSystemObject"),且需降低安全性設定或加入信任站點。

IE 專用程式碼

function folderExists(path) {
    try {
        var fso = new ActiveXObject("Scripting.FileSystemObject");
        return fso.FolderExists(path);
    } catch (e) {
        console.error("ActiveXObject 不支援或被阻擋", e);
        return false;
    }
}

// 使用範例
if (folderExists("C:\\MyFolder")) {
    alert("資料夾存在");
} else {
    alert("資料夾不存在或無權限訪問");
}

現代替代方案

  1. File System Access API (Chrome 86+):需使用者手動選擇目錄授權。
    async function pickFolder() {
        const handle = await window.showDirectoryPicker();
        // 可讀取 handle 內容
    }
    
  2. Electron / Tauri / NW.js:桌面應用框架提供 Node.js fs 模組完整權限。
  3. 伺服器端檢查:前端傳路徑給後端,由後端驗證並回傳結果。

結論

純 Web 頁面無法跨瀏覽器可靠判斷本地資料夾存在性。請根據應用場景選擇:內部 IE 專用系統可用 ActiveX;現代 Web 應用改用檔案上傳或桌面應用技術棧。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved