Foro de elhacker.net

Programación => Java => Mensaje iniciado por: 1mpuls0 en 26 Noviembre 2008, 03:25 am



Título: Conversor de Texto a Binario¿?
Publicado por: 1mpuls0 en 26 Noviembre 2008, 03:25 am
Hola camaradas del foro, quiero saber si existe algun metodo ya creado en java(que dudo un poco) para hacer la conversion de un texto a binario

Ejemplo:

http://nickciske.com/tools/binary.php
http://www.roubaixinteractive.com/PlayGround/Binary_Conversion/Binary_To_Text.asp
http://www.geek-notes.com/tools/17/text-to-binary-translator/

Bueno espero y puedan ayudarme, y si tengo que crear el metodo me puedan guiar por que la verdad no tengo idea!!(aunque se un poco de matematicas discretas)

Saludos!!


Título: Re: Conversor de Texto a Binario¿?
Publicado por: carlitos.java en 26 Noviembre 2008, 06:13 am
Mira, aquí escribí uno:
Código
  1.    /**
  2.      * Metodo que convierte un texto en salida binaria
  3.      * Escrito por Carlos
  4.      * @return Devuelve un String.
  5.      */
  6.    public static String textoABinario(String texto)
  7.    {
  8.        String textoBinario = "";
  9.        for(char letra : texto.toCharArray())
  10.        {
  11.            textoBinario += String.format("%16s", Integer.toBinaryString(letra));
  12.        }
  13.        return textoBinario.replace("\u0020","\u0030");
  14.    }
  15.  

Nota: coloqué %016d para que rellene con ceros hasta completar los 16 bits de los char que contienen los unicode. Si pusiera %08d rellenaría con 0 hasta completar 8 bit y la salida resultaría como la de los conversores web que enlazas, pero la salida binaria no quedaría múltipla de 8 al ingresar textos como: "a\u0FA0", pues algunos carácteres unicodes ocupan más de 8 bits.

Nota: el "\u0020" es el carácter espacio en unicode, y el "\u0030" es el "0".

Aquí tienes la tabla unicode: http://unicode.coeurlumiere.com/
Fíjate que hay varios tipos de guiones: http://www.cs.tut.fi/~jkorpela/dashes.html
y espacios: http://www.cs.tut.fi/~jkorpela/chars/spaces.html

Queda mejor todo al escribirlo con la notación unicode, sobre todo al trabajar con códigos entre distintos sistemas operativos.




Título: Re: Conversor de Texto a Binario¿?
Publicado por: 1mpuls0 en 26 Noviembre 2008, 08:51 am
Hola nuevamente gracias carlitos.java la verdad aprendi mas de lo que esperaba hoy, ademas que mi problema esta solucionado gracias! ahora solo tengo que separar por espacios entre cada caracter pero eso ya me corresponde!! en verdad muchas gracias!! ;)

Saludos