std::wbuffer_convert::rdbuf
Aus cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody>| definiert in Header <locale>
|
||
std::streambuf* rdbuf() const; |
(1) | |
std::streambuf* rdbuf( std::streambuf* bytebuf ); |
(2) | |
1)
liefert den Zeiger zu dem zugrunde liegenden Bytestrom
Original:
returns the pointer to the underlying byte stream
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
ersetzt das zugehörige Byte-Stream mit
bytebufOriginal:
replaces the associated byte stream with
bytebufThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
.
Rückgabewert
1)
die aktuelle zugrundeliegenden Byte-Stream
Original:
the current underlying byte stream
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
das vorherige Byte-Stream
Original:
the previous byte stream
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Beispiel
#include <iostream>
#include <sstream>
#include <locale>
#include <codecvt>
int main()
{
// convert UTF-8 to UCS4
std::stringbuf utf8buf(u8"z\u00df\u6c34\U0001d10b"); // or u8"zß水𝄋"
// or "\x7a\xc3\x9f\xe6\xb0\xb4\xf0\x9d\x84\x8b";
std::wbuffer_convert<std::codecvt_utf8<wchar_t>> conv(&utf8buf);
std::wistream ucsbuf(&conv);
std::cout << "Reading from a UTF-8 stringbuf via wbuffer_convert:\n";
for(wchar_t c; ucsbuf.get(c); )
std::cout << std::hex << std::showbase << c << '\n';
// reuse the same wbuffer_convert to handle UCS4 to UTF-8 output
conv.rdbuf(std::cout.rdbuf());
std::wostream out(&conv);
std::cout << "Sending UCS4 data to std::cout via wbuffer_convert:\n";
out << L"z\u00df\u6c34\U0001d10b\n";
}
Output:
Reading from a UTF-8 stringbuf via wbuffer_convert:
0x7a
0xdf
0x6c34
0x1d10b
Sending UCS4 data to std::cout via wbuffer_convert:
zß水𝄋
Siehe auch
baut eine neue wbuffer_convert Original: constructs a new wbuffer_convert The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (öffentliche Elementfunktion) |