Pergunta

i analisado um texto (código CAL) com BufferedReader e BufferedWriter em Java, infelizmente, as linhas que eu vermelho e escreveu com outStream.write (linha); mudaram, por favor, olhe Screenshots:

http://uploadz.eu/images/4qz8mtkm2d9zx3x5ms3n.png h ** p: //uploadz.eu/images/c03hgkrgrmit2ij2mug.png

como você vê, algum caráter especial que mudou as linhas embora eu não pretende mudá-los.

, tanto quanto eu sei, BufferedWriter / leitor deve trabalhar em unicode por padrão.

Foi útil?

Solução

Bem BufferedWriter e BufferedReader são codificação agnóstico -. Eles nunca lidar com as codificações reais, como eles estão apenas tamponamento leitores e escritores existentes

Agora FileWriter e uso FileReader a codificação padrão do sistema (urgh). Para trabalho contornar isso, você deve geralmente usar um InputStream / InputStreamReader ou OutputStream par / OutputStreamWriter (possivelmente envolvido em um BufferedReader / BufferedWriter), e especificar a codificação explicitamente.

Você não disse que você está lendo realmente de - é um arquivo? Sabe qual é a codificação do arquivo?

Outras dicas

Você deve quer saber a codificação se você estiver indo para tratar o conteúdo como texto (String), ou, quando a cópia é o seu objetivo, ou tratar o conteúdo como um array de bytes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top