Condividi tramite


Flusso I/O Unicode in modalità binario e del testo

Quando una routine del flusso I/O Unicode (ad esempio fwprintf, fwscanf, fgetwc, fputwc, fgetws, o fputws) opera su un file aperto in modalità di testo (impostazione predefinita), due tipi di conversioni di carattere si verificano:

  • Unicode-a-MBC'o di MBCS--Unicode conversione.Quando una funzione Unicode stream-I/O viene eseguito in modalità testo, il database di origine o un flusso di destinazione sia una sequenza di caratteri multibyte.Pertanto, le funzioni dell'flusso-input Unicode convertono i caratteri multibyte ai caratteri di tipo " wide " (ad esempio se da una chiamata a mbtowc la funzione.Per lo stesso motivo, Unicode flusso-restituito caratteri di tipo " wide " convert di funzioni in caratteri multibyte (ad esempio se da una chiamata a wctomb la funzione.

  • ritorno a capo - conversione di avanzamento riga (CR-LF).Questa conversione precede il formato MBCS - conversione Unicode (per le funzioni di input del flusso Unicode) e dopo Unicode (conversione del formato MBCS (per le funzioni di output del flusso Unicode).Durante l'input, ogni ritorno a capo e la combinazione di avanzamento riga viene convertita in un unico carattere di avanzamento riga.Durante output, ogni carattere di avanzamento riga viene convertito in ritorno a capo - combinazione di avanzamento riga.

Tuttavia, quando una funzione Unicode stream-I/O viene eseguito in modalità binaria, il file viene considerato come Unicode e nessuna conversione di conversione o di carattere di CR-LF si verifica durante input o output.utilizzare il _setmode (_fileno (stdin), _O_BINARY); istruzione per poter utilizzare wcin in un file di testo UNICODE.

Vedere anche

Riferimenti

Routine di runtime per la categoria

Input e output