🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #17624

Re: UTF-8

#17624
From: Juan Gonzalo de Silva Medina
Date: Mon, 30 Oct 2000 22:14
69 lines
3395 bytes
La Ni�a escribi�:
> 
> Hola,
> 
> Tengo una aplicaci�n que contruye un fichero jar de un directorio, bueno
> pues,
> si alg�n archivo tiene acento o algo as� la entrada en el fichero jar
> cambia,
> creo que es porque se transforma el nombre a UTF-8
> 
> mmm..., la verdad no se muy bien de que va esto del UTF-8
> 
> la cuestion, es que yo tento un txt con los nombres de los archivos
> metidos en el jar
> y claro luego no me coinciden los strings,
> 
> Hay alguna forma en jave de pasar un String a UTF-8, o viceversa ??
> 
> (es Urgente)
> 
> Muchas Gracias

Ostras, es cierto, y yo con estos pelos...

Bueno, bueno, es cierto se almacenan en UTF-8 (o eso parece)...

De todas maneras si hacer "jar -tf fichero.jar" salen bien los acentos,
imagino que fallan con el unzip o similares.

Veamos UTF-8 es una manera de codificar para ahorrar octetos la
informaci�n de UNICODE y as� a bote pronto creo recordar que se utiliza
un bit para indicar si hay o no m�s octetos para montar el caracter,
esto es, de dos octetos se pasa a poder tener 1 octeto, dos o tres, en
funci�n del valor Unicode que tenga. En el caso de las letras acentuadas
pasa a tener dos octetos. Esto es ya que la mayoria de los caracteres
Unicode utilizados por casi todo el mundo (latin-1) est�n sobre todo en
la parte baja de la tabla, con lo que generalmente ganas espacio. Por
supuesto si estas en algun idioma que usa la tabla alta, mejor quedarse
en UNICODE...

Particularmente creo que deberias de grabar ese fichero en formato
UTF-8, no simplemente para que te coincidan los nombres, sino que te
pueden variar por temas de Codepage. Me explico, en Windows tu utilizas
un codepage cuyo valor en hexadecimal (valor final que utilizas para
grabar) no corresponde con el de otro sistema, as� tu en Windows tienes
en un fichero:

miGesti�n.txt

Claro que en OS/2 o en otro S.O., si sacas esta informaci�n por pantalla
pone (por poner un ejemplo):

miGesti|n.txt

Y esto en Unicode, que es como se almacenan en memoria, no coinciden ni
ha tiros...

Tendrias que realizar la conversi�n utilizando una lectura de byte y
luego haciendo una nueva cadena con new String(byte[], CodePage).

En http://www.ibm.com en la zona de desarrolladores y despu�s en la zona
de Java, puedes obtener una series de clases que te permiten manipular y
gestionar cadenas en UTF-8 y UNICODE para varios usos.

Saludos,

--
Juan Gonzalo de Silva Medina
System.out.println("I Love Linux");
Technical Details
Message-ID: <39FDF2D8.F16F1A89@caymasa.es>
Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!sn-xit-01!supernews.com!newsfeed.stanford.edu!news.tele.dk!130.133.1.3!fu-berlin.de!newsfeed.bcn.ttd.net!news.mad.ttd.net!not-for-mail
References: <39FD663E.E9C947A5@mundomail.net>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,5d277be17ff88a72
X-Google-Attributes: gid1116f3,public
X-Google-ArrivalTime: 2000-10-30 14:11:35 PST
Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!sn-xit-01!supernews.com!newsfeed.stanford.edu!news.tele.dk!130.133.1.3!fu-berlin.de!newsfeed.bcn.ttd.net!news.mad.ttd.net!not-for-mail
From: Juan Gonzalo de Silva Medina <gonzalo@caymasa.es>
Newsgroups: es.comp.lenguajes.java
Subject: Re: UTF-8
Date: Mon, 30 Oct 2000 23:14:48 +0100
Organization: Telefonica Transmision de Datos
Lines: 69
Message-ID: <39FDF2D8.F16F1A89@caymasa.es>
References: <39FD663E.E9C947A5@mundomail.net>
NNTP-Posting-Host: 194.224.23.190
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Mailer: Mozilla 4.72 [es] (X11; U; Linux 2.2.14-5.0 i686)
X-Accept-Language: es, en