Foros del Web » Programación para mayores de 30 ;) » Java »

Problemas al escribir en un fichero

Estas en el tema de Problemas al escribir en un fichero en el foro de Java en Foros del Web. El problema es el siguiente es que al escribir en un fichero de texto cada campo tiene que tener un tamaño maximo cada uno distinto, ...
  #1 (permalink)  
Antiguo 10/06/2011, 05:27
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 16 años, 7 meses
Puntos: 8
Problemas al escribir en un fichero

El problema es el siguiente es que al escribir en un fichero de texto cada campo tiene que tener un tamaño maximo cada uno distinto, se separan los campos con tabuladores. El problema viene cuando la cadena que se escribe tiene algun caracter extraño como la Ñ que la transforma y entonces el campo mide mas del tamaño y falla, ¿como puedo solucionarlo?

Se puede decir al BufferWriter el idioma para que escriba en español. Se puede configurar el sistema operativo(unix) para que trate los ficheros en español.

Muchas gracias por las molestias
  #2 (permalink)  
Antiguo 10/06/2011, 13:29
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: Problemas al escribir en un fichero

Echa un ojo a esto http://vietunicode.sourceforge.net/h.../encoding.html
En vez de UTF-8 usa el propio del español iso-8859-1
Si luego quieres que en un editor se vea bien el fichero, asegúrate que el editor está también usando esa codificación.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 10/06/2011, 19:58
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Problemas al escribir en un fichero

Hola,

Cita:
Iniciado por chuidiang Ver Mensaje
... En vez de UTF-8 usa el propio del español iso-8859-1
Si luego quieres que en un editor se vea bien el fichero, asegúrate que el editor está también usando esa codificación.
...
Huuum ... comparto la opinión de asegurarse que 'todas' las herramientas que estés usando estén configuradas en la misma codificación de tablas de caracteres, pero en cuanto a usar ISO-8859-1 en lugar de UTF-8 lo considero un error grave si existe alguna otra opción, sino nimodo.

UTF es una codificación creada en Unicode, el código Universal, todas las letras y símbolos de la tabla ISO-8859-1 están incluidas en la codificación UTF.

¿La pregunta es ... como sabe que unas miden más que las otras?

Y la respuesta es simple, está usando UTF para escribirlo y después lo quiere leer con ISO-8859-1 o ASCII, posiblemente en otro lenguaje u otro sistema, si usara la misma codificación para escribir y leer no notaría la diferencia, puesto que las herramientas se encargarían de 'saber' que la letra Ñ es una única letra, cosa que no 'sabe' ISO-8859-1, ni ASCII ni otras tablas que lo interpretan como dos letras.

Lo peor del caso es que el lenguaje Java fue creado con UTF en mente al igual que las últimas versiones de Linux, puesto que internamente solamente entiende UTF, supongo que los creadores del sistema Java pensaron en todo, que lo puede convertir a otras tablas es otra historia puesto que necesita ser compatible con lo demás, aunque sean conceptos obsoletos desde hace muchos años.

La familia de clases Java que usan Writer usan la codificación por defecto del sistema que estas usando.

Posiblemente te sea de alguna ayuda: http://www.forosdelweb.com/f45/probl...7/#post3281266

Saludos,

Etiquetas: fichero
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:57.