ISO 檔案格式

ISO 是一種廣泛使用的存檔格式,旨在建立光碟(例如 CD、DVD 和藍光光碟)的精確數位副本。 ISO 檔案被稱為磁碟映像格式,它儲存光碟的完整結構和內容,可以輕鬆分發、存檔和模擬實體媒體。這種格式在軟體分發、作業系統安裝媒體和資料備份中很受歡迎,提供跨各種平台和軟體工具的兼容性。

一般 ISO 存檔資訊

ISO 檔案是光碟映像的數位副本,通常用於分發軟體、作業系統和大型資料集。 ISO 檔案在單一檔案中包含 CD、DVD 或藍光光碟的所有資料和檔案系統結構,完全保留實體媒體上顯示的原始內容。這種格式在不同平台上得到廣泛支持,可以作為虛擬驅動器安裝、刻錄到光碟或提取以進行單一文件訪問。 ISO 檔案非常適合備份、軟體分發和在虛擬環境中模擬實體磁碟。

ISO歷史資訊

  • 1987年:建立ISO 9660標準,確保CD-ROM資料可以在不同系統上讀取,為ISO檔案格式奠定了基礎。
  • 1995 年:隨著 CD 燒錄機的出現,ISO 檔案作為分發軟體和多媒體內容的一種方式而受到歡迎。
  • 2001 年:隨著 DVD 媒體的普及,ISO 格式仍然是創建和分發光碟映像的標準。
  • 2007 年:藍光光碟的興起進一步鞏固了 ISO 作為大容量資料儲存和分髮通用格式的地位。
  • 2010 年代:ISO 檔案越來越多地在虛擬環境中使​​用,允許在沒有實體媒體的情況下安裝作業系統和大型軟體包。
  • 2020 年代:ISO 仍然是軟體分發的主要格式,特別是對於大型資料集、作業系統和安全備份。

ISO 檔案的結構

ISO 檔案的結構是原始光碟上的檔案系統和資料結構的直接副本。以下是 ISO 存檔結構的概述:

  1. 主磁碟區描述符: 此部分包含有關 ISO 檔案的元數據,包括磁碟區名稱、系統識別碼和檔案大小。
  2. 路徑表: 路徑表提供 ISO 檔案內的目錄結構圖,允許快速存取檔案和資料夾。它用於在存檔中有效地定位文件。
  3. 檔案和目錄資料: 此部分包含實際的檔案資料和目錄結構,其儲存方式與原始光碟上的儲存方式相同。資料通常以連續的、未壓縮的格式存儲,這保留了光碟的原始佈局。
  4. 引導記錄(可選): 如果 ISO 旨在可引導,則它包含一個引導記錄,提供從 ISO 檔案引導系統的說明,模擬實體引導光碟的行為。
  5. 卷宗描述符集終止符: 這標誌著卷宗描述符集的結束,並指示 ISO 檔案資料結構的結束。

ISO 壓縮方法

SO 檔案通常不會直接在格式本身中包含壓縮方法;相反,它們是光碟(例如 CD、DVD 或藍光光碟)資料結構的精確副本。但是,在建立或管理 ISO 檔案時,可以在外部套用壓縮:

  • 未壓縮: 大多數 ISO 檔案都是未壓縮的,保留了原始光碟的確切資料結構。這可確保與需要未壓縮光碟映像的系統完全相容。
  • 外部壓縮: ISO 檔案可以使用通用壓縮工具(如 ZIP、RAR 或 7z)進行壓縮。這可以減少儲存或傳輸的檔案大小,但 ISO 在使用前必須解壓縮。
  • 整合壓縮(UDF): 某些ISO 文件,特別是使用通用磁碟格式(UDF) 的ISO 文件,可能包含整合壓縮技術,但這種情況不太常見,並且不是所有ISO 實現的標準。

.iso 支援的操作

Aspose.Zip API 支援各種處理 .ISO 檔案的操作,這些檔案是通常用於分發軟體和建立備份的磁碟映像檔。以下是 Aspose.Zip API 支援的 .ISO 檔案的一些主要操作:

  • 讀取 ISO 檔:
    • 開啟和瀏覽: Aspose.Zip API 允許您開啟 ISO 檔案並瀏覽其內容,類似於瀏覽目錄的方式。
    • 擷取檔案: 您可以將 ISO 映像中的單一檔案或目錄擷取到磁碟上的指定位置。
  • 建立 ISO 檔案:
    • 建立新的 ISO 映像: 您可以從檔案和目錄的集合建立新的 ISO 映像。這對於建立備份或分發軟體很有用。
  • 修改 ISO 檔:
    • 新增檔案: 將新檔案新增至現有 ISO 映像。
    • 刪除檔案: 從現有 ISO 映像中刪除檔案。
    • 更新檔案: 以新版本取代 ISO 映像中的現有檔案。
  • 壓縮和解壓:
    • 雖然 ISO 檔案本身未壓縮,但 Aspose.Zip API 支援將檔案壓縮為其他存檔格式,然後將其新增至 ISO 映像或在提取後解壓縮的相關操作。
  • 使用檔案屬性:
    • 檢視屬性: 檢視 ISO 映像中檔案和目錄的屬性,例如大小、建立日期和修改日期。
    • 設定屬性: 如有需要,修改 ISO 映像中檔案的屬性。

.ISO 檔案的結構

ISO 檔案格式用於表示整個光碟(例如 CD、DVD 或藍光光碟)的精確數位副本(或「影像」)。以下是 ISO 檔案結構的概述:

  1. 主卷描述符:

    • 魔術識別碼: 通常包含字串“CD001”,用於將檔案標識為有效的 ISO 9660 檔案系統。
    • 磁碟區資訊: 包含磁碟區名稱、建立日期和磁碟區大小等元資料。
  2. 檔案系統資料:

    • 目錄記錄: 這些記錄定義 ISO 映像內檔案和目錄的層次結構。每個條目包含檔案名稱、大小、磁碟上的位置和時間戳記等資訊。
    • 路徑表: 列出映像中所有目錄路徑的表,允許快速存取檔案和目錄。
  3. 啟動記錄(可選)*:*

    • El Torito 引導資訊: 如果 ISO 可引導,此部分包括引導資訊和指向可引導磁區的指標的說明。
  4. 文件資料:

    • 原始檔案內容: ISO 映像中儲存的檔案的實際數據,按照它們在光碟上出現的順序排列。
  5. 補充卷描述符(可選)*:*

    • Joliet 擴充:提供對 Unicode 檔案名稱的支持,允許使用超出標準 ISO 9660 支援的基本 ASCII 的擴充字元集。
  6. 卷宗描述符集終止符:

    • 結束標記: 一個特殊描述符,指示卷描述符的結尾,表示檔案結構中不再有元資料。
  7. 元資料(可選)*:*

    • 校驗和和完整性資料: 某些 ISO 可能包含校驗和或其他資料來驗證存檔內檔案的完整性。

.ISO 檔案的結構

ISO 格式的流行

.ISO 檔案格式長期以來一直是軟體分發、資料歸檔和系統備份領域的主要內容,主要是因為它能夠精確複製 CD、DVD 和藍光光碟等光碟的內容。 ISO 格式廣泛應用於 Windows、macOS 和 Linux 等各種作業系統,對於建立可啟動媒體、分發大型軟體包和保存數位資料是不可或缺的。

使用 ISO 檔案的範例

雖然您的文字沒有提及具體限制,但請務必注意,Aspose.Zip 目前不支援建立可啟動 ISO 映像。但是,它提供以下功能:
- 開啟和瀏覽 ISO 檔案。
- 從 ISO 映像中提取檔案和目錄。
- 從檔案集合建立新的 ISO 映像。
- 在現有 ISO 檔案中新增、刪除和更新檔案。
- 檢視和設定 ISO 映像中的檔案屬性。

Unpack ISO using C#

    using (var archive = new IsoArchive(File.OpenRead("archive.iso")))
    { 
        archive.ExtractToDirectory("C:\\extracted");
    }

Create ISO archive via C#

    using(IsoArchive isoArchive = new IsoArchive())
    {
        isoArchive.CreateEntry("example_file.txt", "path_to_file.txt");
        isoArchive.Save("new_archive.iso");
    }

Extracting Files From ISO via Java

    try (IsoArchive archive = new IsoArchive(new FileInputStream("archive.iso"))) {
        archive.extractToDirectory("C:\\extracted");
    } catch (IOException ex) {
    }

Create ISO by Java

    try (IsoArchive isoArchive = new IsoArchive()) {
        isoArchive.createEntry("example_file.txt", "path_to_file.txt");
        isoArchive.save("new_archive.iso");
    }

Extract ISO using Python.Net

    with aspose.zip.iso.IsoArchive(io.FileIO("archive.iso")) as archive:
        archive.extract_to_ditectory("c:\\extracted")

Create an ISO via Python.Net

    with aspose.zip.iso.IsoArchive() as iso_archive:
        iso_archive.create_entry("input_file.dat", "data/input_file.dat")
        iso_archive.save("archive.iso")

Aspose.Zip offers individual archive processing APIs for popular development environments, listed below:

Aspose.Zip for .NETAspose.Zip via JavaAspose.Zip via Python.NET

附加資訊

人們一直在問

1. ISO 檔有什麼用?

ISO 檔案用於建立實體光碟(例如 CD、DVD 或藍光光碟)的精確數位副本。它保留了光碟的全部內容和結構,使其成為軟體分發、備份和燒錄新光碟的理想選擇。

2. 如何建立 ISO 檔案?

建立 ISO 檔案需要使用光碟映像軟體。在 Windows 上,可以使用 ImgBurn 等工具或內建的「建立系統映像」功能。在 macOS 上,「磁碟工具」應用程式可以從光碟或資料夾建立 ISO 映像。

3. ISO 檔案可以壓縮嗎?

ISO 檔案通常不會壓縮,因為它們是光碟的精確副本。但是,您可以使用 ZIP 或 RAR 等格式壓縮 ISO 文件,或將其轉換為 CSO 等壓縮光碟映像格式。