std::codecvt_mode
De 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. |
| Defined in header <locale>
|
||
| enum codecvt_mode { consume_header = 4, |
||
Las facetas std::codecvt_utf8, std::codecvt_utf16, y std::codecvt_utf8_utf16 aceptar un valor opcional de std::codecvt_mode tipo como un argumento de plantilla, que especifica las características opcionales de la conversión cadena Unicode .
Original:
The facets std::codecvt_utf8, std::codecvt_utf16, and std::codecvt_utf8_utf16 accept an optional value of type std::codecvt_mode as a template argument, which specifies optional features of the unicode string conversion.
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.
[editar] Constantes
| Defined in header
<locale> | |
| Valor
Original: Value The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Meaning |
little_endian
|
asumir la entrada está en el orden de bytes little-endian (se aplica a UTF-16 sólo entrada, el valor predeterminado es big-endian)
Original: assume the input is in little-endian byte order (applies to UTF-16 input only, the default is big-endian) The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
consume_header
|
consumir la marca de orden de bytes, si está presente al comienzo de la secuencia de entrada, y (en caso de UTF-16), se basan en el orden de bytes que especifica para la descodificación del resto de la entrada
Original: consume the byte order mark, if present at the start of input sequence, and (in case of UTF-16), rely on the byte order it specifies for decoding the rest of the input The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
generate_header
|
la salida de la marca de orden de bytes en el inicio de la secuencia de salida
Original: output the byte order mark at the start of the output sequence The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Las marcas byte de orden reconocidas son:
Original:
The recognized byte order marks are:
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.
0xfe 0xff
|
UTF-16 big-endian
Original: UTF-16 big-endian The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
0xff 0xfe
|
UTF-16 little-endian
Original: UTF-16 little-endian The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
0xef 0xbb 0xbf
|
UTF-8 (ningún efecto sobre endian)
Original: UTF-8 (no effect on endianness) The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Si no se selecciona std::consume_header al leer un archivo que comience con la marca de orden de bytes, el carácter Unicode U + FEFF (Zero ancho espacio de no separación) se lee como el primer carácter de la cadena de contenido .
Original:
If std::consume_header is not selected when reading a file beginning with byte order mark, the Unicode character U+FEFF (Zero width non-breaking space) will be read as the first character of the string content.
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.
[editar] Ejemplo
El ejemplo siguiente muestra el consumo de UTF-8 lista de materiales
Original:
The following example demonstrates consuming the UTF-8 BOM
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.
#include <fstream> #include <iostream> #include <string> #include <locale> #include <codecvt> int main() { // UTF-8 data with BOM std::ofstream("text.txt") << u8"\ufeffz\u6c34\U0001d10b"; // read the UTF8 file, skipping the BOM std::wifstream fin("text.txt"); fin.imbue(std::locale(fin.getloc(), new std::codecvt_utf8<wchar_t, 0x10ffff, std::consume_header>)); for(wchar_t c; fin.get(c); ) std::cout << std::hex << std::showbase << c << '\n'; }
Output:
0x7a 0x6c34 0x1d10b
[editar] Ver también
| Convierte entre codificaciones de caracteres, incluyendo UTF-8, UTF-16, UTF-32 Original: converts between character encodings, including UTF-8, UTF-16, UTF-32 The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (clase de plantilla) | |
| (C++11) |
la conversión entre UTF-8 y UCS2/UCS4 Original: converts between UTF-8 and UCS2/UCS4 The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (clase de plantilla) |
| (C++11) |
la conversión entre UTF-16 y UCS2/UCS4 Original: converts between UTF-16 and UCS2/UCS4 The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (clase de plantilla) |
| (C++11) |
converts between UTF-8 and UTF-16 (clase de plantilla) |