2013-07-31 56 views
2

好吧,我有一個使用BinaryWriter編寫的二進制文本文件。 由於文檔不佳,文件格式丟失。C#在不知道文件格式的情況下讀取二進制文本文件

我使用BinaryReader來讀取文件,但唯一的方法是我可以做到這一點是通過試驗和錯誤,通過逐步通過該文件,並猜測我是否應該使用BinaryReader類的ReadInt64(),ReadString()等。

是否有步驟通過該文件並自動確定下一個值格式是什麼?

+0

沒有「二進制文本文件」這樣的東西。文件可以是二進制文件,也就是說字節代表某些任意(但已知)形式的數據,也可以是文本文件,這意味着字節以已知文本編碼之一編碼文本字符。 – Tergiver

+0

@Tergiver好的謝謝。 – CathalMF

+0

您可能會考慮在二進制(十六進制)文件查看器中打開文件,以便檢查格式。這會讓你更好地瞭解如何閱讀它,而不是使用'BinaryReader'進行反覆試驗。 Visual Studio將顯示一個二進制文件。 –

回答

2

不可以。BinaryWriter不會將任何類型的信息打包到寫入的文件中,因此無法對此進行反向工程 - 除了試用&錯誤,正如您已經發現的那樣。

+0

Bah這不是我想聽到的。 – CathalMF

相關問題