文件關聯
關聯和操作
一個文件擴展名可以有很多個關連程序來處理不同的操作。一些操作如:
- 打開 打開一個文件
- 編輯 打開一個文件以編輯
- 打印 打印一個文件
例如:一張圖片可以用圖片瀏覽器打開,用圖片編輯程序編輯,用打印功能發送到打印機
實現
大多數操作系統 使用各種不同的方式支持文件關聯。例如,從文件管理器中打開一個文件會調用打開功能以使用它的關聯程序。附加的功能,例如打印 常常使用右鍵菜單。存在一種修飾文件關聯的機制,例如在Windows Shell中使用打開方式。
Microsoft Windows
在Windows系列的操作系統中, 從windows 95開始支持基於插件的關聯,關聯類型保存於註冊表中,每個類型都有一系列的描述。舊版系統中支持打開操作的關聯,這可在WIN.INI中定義。
文件關聯可以通過使用assoc
命令來查看和編輯,通過使用ftype
命令以查看是否可以創建當前文件類型與應用程序之間的關聯。
Windows外殼通過組件對象模型,拖拽或命令行來調用文件關聯行為。Windows文件關聯的高級特性包括人工定義一個新的使用任意數量關聯行為的文件擴展,一個默認動作,僅僅顯示特定的文件類型的擴展,調整文件類型的圖標與描述和定製關聯的MIME類型和他們的處理方法。這個功能可以配置文件關聯的高級配置,但在Windows Vista和之後的系統中被移除。
Linux
在linux的桌面環境中,例如KDE與GNOME,支持基於MIME類型的文件關聯。例如:MIME類型通過代碼text/plain
將會被關聯到文本文件編輯器上。[1]
macOS
Mac OS X 開始支持基於文件擴展名的文件類型關聯。
macOS 應用程序在它們的 Info.plist 文件中聲明支持打開的文件類型。對於每個特定類型都有一個統一類型標識符(UTI),以及定義可以識別該類型的文件或數據的標記列表。例如,JPEG 類型的 UTI 是 "public.jpeg",標記的擴展名是 "jpg" 和 "jpeg",MIME 類型 "image/jpeg" 以及類型碼(Tyoe codes)「JPEG「。
macOS 使用這些信息生成能夠打開每種類型文件的應用程序列表,Finder 會根據每個文件的 UTI 標識使用默認的應用程序打開該文件,用戶也可以選擇使用其他支持該文件類型的應用程序來打開文件。
使用此系統,類型還可以與沒有文件名或缺少文件擴展名的數據進行關聯,包括使用 HTTP 等協議的剪貼板數據和數據流(帶有 MIME 類型)。
參考文獻
- ↑ Association between MIME types and applications. specifications.freedesktop.org. [2019-05-25].