2014-12-22 43 views
0

是否有可能將文件十六進制值讀入c#並輸出相應的ASCII碼?我可以在一個十六進制編輯器中查看該文件,然後我可以在十六進制旁邊看到相應的ASCII碼,而不是手動拷出我需要的部分我想我的機器可以在c#程序中執行此操作嗎?打開文件,以十六進制讀取並將其轉換爲ASCII?

我確實發現Converting HEX data in a file to ascii但這並沒有真正的幫助?

+0

是的,這是可能的。你找到的答案是爲C++ –

+0

你經歷了這個 - http://msdn.microsoft.com/en-us/library/bb311038.aspx –

+3

你確定該文件是十六進制格式? 「十六進制編輯器」通常是一個字節編輯器,它將字節值顯示爲十六進制和ASCII。 – Guffa

回答

4

這聽起來像你只需要:

string text = File.ReadAllText("file.txt"); 

有沒有這樣的事情在一個文件中「十六進制值」 - 他們是被顯示爲對編輯的非文本面向各種編輯器十六進制就是一個字節文件。

上述代碼行將加載一個文本文件,將其解碼爲UTF-8 - 與ASCII兼容,因此如果您的文件是真正的ASCII文件,則應該沒問題。如果你需要指定一個不同的編碼,你可以用一個過載來完成,例如

// Load an ISO-8859-1 file 
string text = File.ReadAllText("file.txt", Encoding.GetEncoding(28591)); 
+1

我會給你一個鏡頭,有趣的是你所說的「十六進制值」本質上只是字節。 – Apqu

+0

啊,這絕對是一個很大的幫助,我現在需要的ASCII數據,只需要以某種方式刪除所有「NULL」字節,它是完美的:-)嚴重感謝您的幫助隊友:-) – Apqu

+0

@Tur:Why你的輸入是否有這些字節開頭?它真的是一個文本文件嗎? –

相關問題