Pregunta

analicé un texto (código CAL) con BufferedReader y BufferedWriter en Java, desafortunadamente, líneas que escribí en rojo y escribí con outStream.write (línea); ha cambiado, mira las capturas de pantalla:

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

como ve, algunos caracteres especiales cambiaron las líneas, aunque no pretendía cambiarlas.

por lo que sé, Bufferedwriter / Reader debería funcionar en Unicode por defecto.

¿Fue útil?

Solución

Bueno, BufferedWriter y BufferedReader están codificando agnósticamente, nunca se ocupan de las codificaciones reales, ya que solo almacenan los lectores y escritores existentes.

Ahora FileWriter y FileReader usan la codificación predeterminada del sistema (urgh). Para solucionar esto, generalmente debe usar un par InputStream / InputStreamReader o OutputStream / OutputStreamWriter (posiblemente envuelto en un BufferedReader / BufferedWriter ) y especifique la codificación explícitamente.

No has dicho lo que realmente estás leyendo, ¿es un archivo? ¿Conoces la codificación del archivo?

Otros consejos

Debería conocer la codificación si va a tratar el contenido como texto (Cadena) o, cuando la copia es su objetivo, o tratar el contenido como una matriz de bytes.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top