Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/01/2016, 18:59
PazMundial
 
Fecha de Ingreso: julio-2010
Mensajes: 31
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta De ASCII to bytes

Buenas, tengo este codigo que debería recibir un String de un carácter y retornar un String con los bytes del código, el problema es que al enviar algunos String, en casi todos funciona correctamente y devuelve un String de 8 caracteres de 0 y 1, pero con algunos símbolos devuelve un String de 16 Caracteres de 0 y 1

Código:
public static String AsciiToBinary(String asciiString){  

          byte[] bytes = asciiString.getBytes();  
          StringBuilder binary = new StringBuilder();  
          for (byte b : bytes)  
          {  
             int val = b;  
             for (int i = 0; i < 8; i++)  
             {  
                binary.append((val & 128) == 0 ? 0 : 1);  
                val <<= 1;  
             }  
          }  
          return binary.toString();  
    }

Por ejemplo si le envio : ªØ(

me Devuelve :

Código:
1100001010101010
1100001110011000
00101000
Los 2 primeros términos son String de 16 caracteres
Ademas el código Correcto que debería devolver es:

Código:
10101010
10011000
00101000
Si Alguien sabe el problema o tiene un Codigo para transformar de ASCII to bytes, se lo agradecería mucho.

Atte.