簡體   English   中英

使用write方法格式化寫入C ++流的數據

[英]Formatting data written to C++ stream using write method

我正在嘗試以十六進制形式編寫指向流的指針的內容。 我嘗試將流設置為使用十六進制格式標志,但是使用write方法時似乎沒有任何效果。 下面是我當前的代碼:

char* pointerToData;
size_t dataLength;
....
out.setf(std::ios::hex, std::ios::basefield);
out.setf(std::ios::showbase);
out.write(pointerToData, dataLength);
os.unsetf(std::ios::showbase);

hex標志影響整數值的格式。 當您使用緩沖區調用write ,它不會格式化任何內容。 您需要大致像這樣的東西:

for (size_t ii = 0; ii < dataLength; ++ii) {
    out << int(pointerToData[ii]);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM