2009-06-18 127 views

回答

5

你必須是一個真正的極客,在屏幕上閱讀BASE64

Oracle,當我運行HEXTORAW,我能得到一個什麼樣的RAW領域的一些想法,但我不能BASE64。比如,當我看到很多0x3F的時候,我知道有一些編碼。

而在內部,這些只是二進制字節,沒有其他需要對它們進行編碼,而是顯示給屏幕另一側的人。

+0

如果您需要通過ASCII發送某個地方,將其解碼回二進制並使用,則只需將其轉換爲base64即可。 – 2009-07-06 08:08:03

0

我想你的數據庫是真的存儲數據爲二進制,但查詢編輯器將顯示它使用十六進制編碼。這是SQL Server查詢分析器將執行的操作。

0

我想這僅僅是個人喜好的問題......十六進制是迄今爲止我更容易閱讀,然後在Base32或Base64

3

東西它是有效的空間利用和可讀性之間的良好折衷。位模式在十六進制中變得非常明顯,而其他基地則不太清楚。

這是更容易閱讀,0x8080或32896?我會說十六進制值是。

它也有每個十六進制數字相當於一個半字節(因此每對等於一個字節)的好的屬性。

要容易得多,使進制的感覺在你的腦袋比基地64

至於數據庫,以及牢記之間存在數據的顯示,它是如何存儲的差異。這很可能只是將數據顯示爲十六進制。

2

如果您想將結果值用作Windows上的文件名,Base64不起作用,因爲base64同時使用大寫和小寫字母。我敢肯定還有其他時候,由於類似原因無法使用它。

同意其他有關可讀性的答案 - 十六進制數字在8位字節上很好地對齊,而base64「數字」沒有,並且一個數字可以包含兩個字節的一部分。

+0

有點像角落的情況,但不要使用base64完全一樣。 – 2009-10-10 19:36:17

1

對於字符串存儲(帶有「潛在的」XML安全編碼),使用ASCII 85可以獲得更高的效率,因爲它是5/4膨脹而不是base64的4/3。

但是,「讀」base64甚至更難。並且很多應用程序經常支持它,所以您必須編寫自己的類/函數來執行編碼和解碼。

相關問題