我正在嘗試存儲包含二進制代碼的字符串。C++,將包含二進制文件的字符串存儲到文本文件中
當我試圖將這個字符串寫入一個文本文件時,它只是將字符串格式的每個0和1個字符存儲起來,而不是根據需要將其存儲到8位塊中。這會導致文件比預期的大,因爲它使用8位來存儲每個0和1.
我應該將字符串寫入.bin文件而不是.txt文件嗎? 如果是這樣,我將如何去做這件事,如果可能的話,一個例子與一些工作代碼。
我在此先感謝您的任何建議。
string encoded = "01010101";
ofstream myfile;
myfile.open ("encoded");
myfile << encoded;
myfile.close();
澄清: 我有1的和0的(從霍夫曼樹生成的)的由一個串,我想了打破這個字符串轉換成8位的塊,我希望寫由所述縫隙所表示的每個字符到一個壓縮文件。
你有一個很好的理由在字符串存儲二進制數據?不能使用存儲二進制數據的東西? – Pubby 2013-03-23 14:22:47
我試圖通過使用霍夫曼樹來存儲編碼文本產生的二進制文件。我遇到的問題是以8位壓縮方式將二進制文件寫入文件。 – user2202417 2013-03-23 15:00:20