2009-04-17 66 views
3

我已經陷入了將製表符和二進制數據存儲在製表符分隔的文件中的情況。我最初的嘗試是可怕的。這是否值得追求?有什麼建議?我需要能夠輕鬆地乾淨地解析生成的製表符分隔文件。下游,這些數據將進入MySQLdb。將二進制數據存儲在數據庫中會很好。在一個製表符分隔的文件中存儲ascii和二進制數據

回答

7

base64編碼你的二進制數據。也許用base64加前綴:如果有幫助的話。然後它只是一個ASCII文件,你可以很容易地解析它。

0

你有沒有關於使用不同的格式,而不是製表符分隔?

由於二進制數據可能包含等同於製表符的字符,因此這不是一項簡單的任務。

0

也許存儲在格式hex-blob的二進制數據?這至少得到了MySQL工具鏈的支持。

0

雖然我強烈反對這種方法,但只要您知道二進制數據的準確字節長度,就可以將其直接存儲在文件中。然後您可以從長度值後面的製表符開始讀取。希望在閱讀了指定長度的字節後,您可以使用另一個製表符或換行符。

一個例子:

ASCII 1 ASCII 2 BinaryLength Blob 
this is horrible 18 ®##]-û¢?#ý¯#d  ­ú2 
please don't 48 Þ­¾ï¥Zߨ}è¨Ùب©×ÚX©©x©†Ú…zŠWG©j ‡­˜zǘǰ˜y|‰}— 

你真的應該Base64編碼的二進制數據,雖然。

相關問題