2014-10-30 88 views
0

我使用wofstream合併文件並寫入wstrings和整數(從內存中)。我的問題(現在)是假設我有int32其中包含號碼7。在內存中它需要4個字節,但是當我將它寫入流時,並使用十六進制查看器進行檢查時,我只看到了這個 - 7(單字節)。如何強制流寫入數字數據根據類型

當然這對我來說沒有用,因爲我必須閱讀並可靠地閱讀它。

那麼如何讓流按照類型寫數據 - 所以2字節類型將需要2字節,4字節-4字節等等?

for (const std::wstring &fn : files) 
{ 
    std::wifstream is_src(dst_dir+fn, std::ios_base::binary); 

    os_dest << is_src.rdbuf(); 
    os_dest << fn; 
    os_dest << static_cast<__int32>(fn.size()); 
} 

os_dest << static_cast<__int32>(files.size()); 

我加了鑄造100%肯定有4個字節,沒有別的:

爲了記錄我的合併功能。

回答