我在Mathematica中有一個很大數目的數字。我甚至使用OutputForm[]
以16位的形式得到了這個數字。我基本上試圖寫出一個數字以十六進制格式的文件。在Mathematica中寫入原始數據文件
請記住我在這些例子中使用123456而不是我的70,000位數字。
無論何時我使用簡單的Put[123456, "file.raw"]
命令寫入文件,我都會得到一個原始數據文件,其實際數據3132333435360A
帶有行結尾。
如果我使用Put[OutputForm[BaseForm[123456, 16]], "file.raw"]
命令,我得到一個原始數據文件,其數據格式爲31653234300A202020202031360A
,但仍未寫入原始數據。
我想作爲數據轉儲的數字的十六進制形式。
我試過Export
,BinaryWrite
和DumpSave
,但無法弄清楚。
我只是頭痛,我猜因爲我看不到我需要做的事情。
有一件事我也嘗試在做:
Export["file.raw", 123456];
但該文件沒有足夠的原料。我的意思是有是標題數據和額外的廢話。
很想得到這個工作謝謝。
我不明白寫號你想創建一個文本文件,其中包含你試圖導出的數字的十六進制表示中的字符,或者是一個二進制文件,其中每個4位組表示一個十六進制數字中的一個你的號碼? –
@rezwits,你能準確地定義你所需要的作爲你的「原始」輸出文件的內容嗎?例如,你想要一個字節序列,每個字節代表一個十六進制字符?正如在 - '1A5'會給出一個包含二進制00000001 00001010 00000101的文件。 –
這聽起來像是你把*十六進制表示*與*二進制數據*混淆了。你可能需要'BinaryWrite'。還有其他的細微之處,比如字節順序,確切的二進制表示(你使用實數還是整數?你需要使用的最大數量是多少?) – Szabolcs