您需要了解的關於檔案格式及其屬性的所有資訊

我們可以互換地使用word檔案:音樂、影象、電子表格、幻燈片等等。但究竟是什麼讓檔案成為“檔案”?讓我們試著理解計算的這個基本部分。...

文件是計算體驗的基本部分之一。但什麼是“文件”?它是你桌面上的一個圖標,一個以電子表格形式打開你預算的列表條目,還有一個你可以給你最近的**起的名字。歸根結底,“文件”是一組位(0和1)的集合,這些位以某種應用程序可以理解的模式排列。

file-formats-101

開發人員可能會對這些模式保密,這可能會讓用戶保留某個特定的程序,儘管有其他選擇。其他開發人員實際上可能會鼓勵採用他們的格式。在某些情況下,您可能能夠輕鬆地打開和解釋格式,或者不可能在其本機應用程序之外使用。我們將在本文中探討上述所有內容的示例。

基於文本的文件格式與二進制文件格式

不同文件類型的第一個重要方面是它是二進制的還是基於文本的。讓我們依次來看看每一個。

基於文本的格式

文本文件是最基本的文件格式。幾乎任何有處理器的系統都可以讀取它。這種格式是符合ASCII標準的位序列(1和0)(我們暫時忽略Unicode),這意味著計算機可以將每個字節(8位)解釋為以下字符:

  • A-Z(包括大寫和小寫)
  • 0-9
  • 空格字符
  • 符號的選擇(如標點符號)
  • 控制字符(例如“DEL”)

file formats ascii structure

因為數據是以文本形式存儲的,所以您可以通過在文本編輯器中打開文件來查看文件的內容,即使是像Windows Notepad(或Mac、Linux、iOS和Android的等效工具)這樣的簡單編輯器。由於幾乎所有的計算平臺都附帶了一個基本的文本編輯器,所以您可以將一些(文本)信息放在其中一個文件中,並確信您始終能夠訪問它。其他應用程序不需要進一步瞭解任何信息,至少可以正確讀取數據。

但是,當您需要在封面上表示文本字體或自動填充日期之類的內容時,事情會變得更加複雜。在這些情況下,ASCII字符有助於基於文本的格式,如Markdown或XML。雖然這賦予了純文本的好處,比如透明性,但是這些文件通常需要更多的空間來放置標籤之類的元素。考慮以下一個純文本的句子文件,然後是使用XML的開放文檔格式的“FlatODT”(FODT)格式。下圖顯示純文本版本是53字節,而ODT版本是25000字節。

file formats muo like

二進制格式

相反,二進制格式是應用程序將逐位構造的文件。您可以嘗試用文本編輯器打開這些文件,但它可能不知道如何解釋它們。下面顯示了嘗試使用文本編輯器打開Microsoft Excel文件的結果。

file formats text editor xls

應用程序需要以特定的方式處理二進制文件中的數據。打開XLS文件時,應用程序必須將文件的前16個字節視為“文件開頭”(BOF)標記。在該標記中,第五項是一個位,指示文件是否上次在Windows平臺上編輯(“fWin”)。它位於其他四個項目之後,每個項目有兩個字節,這意味著“fWin”項目是Excel文件中的第65位。

file formats xls bof

正如我們所看到的,如果您試圖用一個不處理第65位作為“fWin”標誌的應用程序打開它,那麼該應用程序將無**確打開它。它可能會在屏幕上顯示大量亂碼字符(如上圖所示),用錯誤消息優雅地處理它(也如上圖所示,因為Linux),或者崩潰。在任何情況下,它都不知道如何正確讀取數據,因此無**確顯示數據。但應用程序一旦編程,就可以處理所需的任意多個文件格式。

開放格式與專有格式

下一個要考慮的問題是,文件格式是開放的(即可供他人輕鬆使用)還是專有的。請注意,“專有”與“關閉”不同,至少不是在所有情況下都是如此。雖然上面的“文本與二進制”的爭論是技術性的,“開放與專有”更多地涉及到文件格式的許可條款。關於這方面的更多信息,請參見以下部分。

打開格式

開放格式是指許可證允許用戶將其用於自己的應用程序的格式。某種類型的標準機構還應該監督其由貢獻者社區進行的持續開發,以使格式真正“開放”。開放格式也沒有許可成本和限制——任何人都可以使用它們,用於任何目的。也許最著名的開放格式是開放文檔格式(opendocumentformat,ODF),由OASIS於2005年首次發佈。它的目的是為微軟在生產力市場上的鎖定提供另一種選擇。

使用開放格式,您無需擔心信息被鎖定在特定文件中。考慮以下內容,它顯示了我們的平面ODT格式文件。雖然有很多無關的信息圍繞著它,你可以看到那裡的實際數據,一清二楚。

file formats muo like odt source

開放格式的另一個好處是其完整的文檔。文件容易閱讀是一回事。程序員仍然需要(通過反覆試驗)弄清楚它的每一個特性到底是做什麼的。但是在ODF的情況下,版本1.2規範為程序員提供了他們需要知道的一切,以便有效地實現對它的支持。

專有格式

最後,專有格式受其開發人員的保護。這可能是因為它們包含商業祕密,出於(感知的)安全的目的,或者僅僅是因為開發人員不想共享他的工作。無論出於何種原因,這些格式都是專有的,因為最終用戶許可協議(eula)或其他條款禁止用戶嘗試反向工程或以其他方式“破解”文件格式。

曾經只是“被禁止”的《數字千年版權法》(DCMA)改變了一切。開發人員現在有了法律支持去追查那些對他們的工作進行反向工程的人。在投資使用專有格式的應用程序之前,您應該考慮一下未來。您將來是否需要將這些信息遷移到其他地方?如果是這樣,會有多痛苦?公司會在一年或五年內成立嗎?如果一個應用程序的特性也意味著由於專有格式而被鎖定在開發人員中,那麼你應該考慮它是否值得。

文件格式示例

如果你看上面,幾個組合會跳出來。誠然,基於文本的文件格式適合於打開。同樣,如果格式的目標是專有的,那麼通過使其二進制化來保持這種方式就更容易了。但情況並非總是如此。

GIMP的XCF圖像格式是一種開放格式,也是二進制的。該項目詳細描述了格式如何將組成GIMP文件的圖形、文本和層保存為原始位和字節(如下所示)。開發人員可以使用它來編寫自己的實現代碼,以便像ImageMagick工具箱這樣的外部應用程序可以導入它們。

file formats xcf structure

相反,最新的microsoftvisio格式(VSDX)是一種基於XML(因此也是基於文本)的格式。它公佈了這些文件組成的詳細參考資料。不過,參考文檔指出,Microsoft“擁有可能涵蓋您的.VSDX支持實現的專利”。此外,美國國會圖書館表示,如果您使用VSDX規範,“並不保證所有相關專利的免版稅許可”。這是另一種說法,你可以擲骰子,包括這個支持。不過,微軟可能會也可能不會希望你以後為它買單,這取決於它與Visio的競爭程度。

如果你認為這些很複雜,那麼非平面ODT格式呢。它是一個包含文檔文本的ZIP格式文件(二進制和開放的,除非您也使用它的加密)(內容.xml,打開基於文本的格式)和圖形(例如PNG,二進制但打開)。

file formats muo like odt compress

文件格式到底有多重要?

這是個難題。一方面,一些像iOS這樣的操作系統試圖將用戶與處理文件隔離開來。你有創建文件的應用程序來打開它,誰關心它的結構或者它的擴展名是什麼?然而,許多組織(尤其是**)一直在努力確保公共數據採用開放格式。

如果你是一個軟件理想主義者(並不是說這有什麼問題),那麼當你評估新的應用程序時,確保它們是一個開放的(最好是)基於文本的格式。如果您只是想開始工作,那麼專有格式對您來說可能不是問題。

你怎麼認為?您是否要求您的信息以可轉換和驗證的開放、基於文本的格式存在?或者無論開發人員使用什麼格式,專有還是非專有,對您來說都足夠了嗎?請在下面的評論中告訴我們!

圖片來源:Edilus/Shutterstock

  • 發表於 2021-03-14 03:30
  • 閱讀 ( 45 )
  • 分類:科技

你可能感興趣的文章

googledrive與onedrive:在哪裡備份windows檔案

... 如果您需要擴充套件到基本的15GB儲存空間之外,那麼谷歌將其升級到100GB需要2美元/月,將其進一步升級到1TB需要10美元/月,10TB需要100美元/月。這是一個合理的價格支付相當於...

  • 發佈於 2021-03-12 11:58
  • 閲讀 ( 53 )

什麼是pdf檔案?為什麼我們仍然依賴它們?

...的內容是檢視文件的其他人將看到的內容。而且你甚至不需要安裝閱讀器——大多數現代瀏覽器開啟PDF都沒有問題。雖然您可以編輯PDF,但除非您為Adobe Acrobat、Foxit PhantomPDF或Nitro等高階軟體付費,否則您只能****很少的選項。 ...

  • 發佈於 2021-03-13 20:51
  • 閲讀 ( 43 )

如何在windows中設定第二個硬碟:分割槽

...特定的容量限制;如果您沒有足夠的空間來存放資料,則需要刪除內容或購買一個新驅動器。 ...

  • 發佈於 2021-03-14 11:23
  • 閲讀 ( 38 )

如何格式化新的內部硬碟驅動器或固態驅動器

...動器(通常是C:驅動器,但不總是)。格式化Windows驅動器需要更復雜的方法,這超出了本文的範圍。 ...

  • 發佈於 2021-03-16 14:49
  • 閲讀 ( 47 )

17個簡單的html程式碼示例,你可以在10分鐘內學會

... 在建立的每個HTML文件的開頭都需要這個標記。它確保瀏覽器知道它正在讀取HTML,並且它需要最新版本的HTML5。 ...

  • 發佈於 2021-03-18 02:34
  • 閲讀 ( 47 )

linux上轉換音訊和影片檔案的5個最佳應用程式

... 為了解決這個問題,您需要下載一個媒體轉換器。幸運的是,當涉及到開源音訊和影片轉換器時,Linux使用者被寵壞了。 ...

  • 發佈於 2021-03-18 05:25
  • 閲讀 ( 54 )

如何更改Windows10檔案關聯和預設程式

... 這就是為什麼有時需要調整檔案型別關聯。幸運的是,這樣做很容易。 ...

  • 發佈於 2021-03-18 18:23
  • 閲讀 ( 62 )

如何建立自己的私有自託管ReadItLater應用程式

...sschrome、youtubedl和其他Unix工具等依賴項來儲存網頁。你不需要一個持續執行的後端伺服器。每次您想匯入新連結並更新靜態輸出時,只需執行它。 ...

  • 發佈於 2021-03-19 09:29
  • 閲讀 ( 53 )

什麼是xml檔案?如何開啟和使用它?

...標記或構建塊。透過新增構建塊,使用者可以根據自己的需要調整XML。 ...

  • 發佈於 2021-03-21 09:43
  • 閲讀 ( 48 )

為什麼mp3tag是你唯一需要的音樂標籤編輯器

... 需要注意的是,元資料與檔名是完全獨立的。你可以有一個名為披頭士的MP3檔案-來吧一起.mp3它沒有元資料。在這種情況下,識別該軌跡的唯一方法是其檔名。這將成為一...

  • 發佈於 2021-03-21 20:04
  • 閲讀 ( 49 )
JIANG5289
JIANG5289

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章