CORRECÇÃO: std::wofstream não é possível escrever para um ficheiro após DBCS carácter escrito para um ficheiro

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

274012
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Sintomas
Não existe nenhum texto aparece depois de um carácter do conjunto (DBCS) caracteres de duplo byte é escrito num ficheiro.

Por exemplo, no seguinte fragmento de código, o texto "" é escrito no ficheiro STLout.txt depois do carácter DBCS 0x30F0 é escrito num ficheiro.
#include <fstream>void main(){  wchar_t ch = 0x30F0; /* DBCS Japanese test character. */   std::wofstream wfout;  wfout.imbue(std::locale("Japanese"));  wfout.open("STLout.txt");  wfout << L"Hello";  wfout << ch;  /* Write the DBCS character to the output text file. */   //wfout.clear(); /* Workaround: Call clear() after the DBCS output. */   wfout << L" There\n";  /* This is not written to the output text file. */ }				
Resolução
Para resolver este problema, obtenha o Service Pack mais recente para o Visual Studio 6.0. Para obter informações adicionais sobre service packs do Visual Studio, clique os números de artigo existente abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft:
194022INFO: Visual Studio 6.0 Service Packs, que, em que, por que razão
194295COMO: Determinar se o Visual Studio Service Pack está instalado
Pode transferir o Visual Studio service pack mais recente a partir do seguinte Web site da Microsoft:
Ponto Da Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados no início deste artigo. Este problema foi corrigido pela primeira vez no Visual Studio 6.0 Service Pack 5.
Std::wofstream DBCS

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 274012 - Última Revisão: 02/24/2014 05:54:25 - Revisão: 2.3

  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kbqfe kbstl KB274012 KbMtpt
Esta informação foi útil?