Pregunta

Considero que obtener soporte Unicode en mis aplicaciones multiplataforma es un verdadero dolor de cabeza.

Necesito cadenas que puedan pasar del código C a una base de datos, a una aplicación Java y a un módulo Perl.Cada uno de estos utiliza codificaciones Unicode diferentes (UTF8, UTF16) o alguna otra página de códigos.Lo más importante que necesito es una forma multiplataforma de realizar conversiones.

¿Qué tipo de herramientas, bibliotecas o técnicas utiliza la gente para facilitar el manejo de estas cosas?

¿Fue útil?

Solución

Echa un vistazo a esto: http://www.icu-project.org/

Otros consejos

Perl tiene Codificar como biblioteca estándar.Se puede usar para leer/escribir cualquier codificación que desee, por lo que eso no será un problema.

¿Cómo lleváis las llamadas multiplataforma?¿Se llama todo desde Java?

http://java.sun.com/docs/books/tutorial/i18n/text/string.html podría ser útil.

Estoy un poco confundido acerca de lo que estás tratando de hacer exactamente.¿Es la base de datos esencialmente una interfaz entre todo el código?Entonces debería ser fácil: simplemente cree la base de datos UTF-8 y cada uno de los clientes deberá realizar sus propias conversiones.

Suena como un problema interesante, ¿podrías compartir más detalles?

Bueno, supongo que iconv es suficiente para tus necesidades.Iconv debería estar disponible en cualquier sistema POSIX de forma predeterminada (entre ellos se incluyen (GNU/)Linux, *BSD, Mac OS X...).En Windows AFAIK requiere una biblioteca separada pero:

  1. puede simplemente instalarlo/agruparlo con su software/compilarlo estáticamente.(libiconv para windows).(Supongo que recomendaría agruparlo).
  2. Puede utilizar algunas llamadas nativas de Windows como caso especial.

Por supuesto, si utiliza Java, lo tiene integrado, pero veo que puede que no sea lo que desea (las llamadas JNI son caras).

PD.¿No puedes configurar Perl para una codificación específica?

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