elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Almacenar cadenas en arreglos de bytes
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Almacenar cadenas en arreglos de bytes  (Leído 4,633 veces)
m@o_614


Desconectado Desconectado

Mensajes: 389


Ver Perfil
Almacenar cadenas en arreglos de bytes
« en: 12 Enero 2015, 06:03 am »

Saludos

Tengo el siguiente código que trata de almacenar una cadena cualquiera en un arreglo de bytes e imprimirlo

Primero tengo que crear un arreglo de bytes, y este arreglo debe contener en la primera posición un contador de caracteres.

A continuación debe almacenar en este array los codigos ASCII de cada caracter del String, y en la primera posición(o sea donde está el contador) debe de tener la longitud de la cadena. TENGO QUE USAR OBLIGATORIAMENTE EL METODO String.getBytes(). Después de realizar todo lo anterior, una subrutina reciba el arreglo de bytes e imprima solo los caracteres contenidos en el arreglo(el contador para eso sirve).

Código
  1. public class ByteArray {
  2.  
  3. public static void main(String[] args)
  4. {
  5. byte arregloBytes[];
  6. String cadena = "Hola";
  7. arregloBytes = obtenerASCII(cadena);
  8. imprimirArreglo(arregloBytes);
  9. }
  10.  
  11. public static byte[] obtenerASCII(String cadena)
  12. {
  13. int longitud,i,j;
  14. longitud = cadena.length()+1;
  15. byte codigosASCII[] = new byte[longitud];
  16.                codigosASCII[0] = (byte)longitud;
  17. for(i = 0,j = 1;i < cadena.length();i++,j++)
  18. {
  19. codigosASCII[j] = (byte)cadena.charAt(i);
  20. }
  21. return codigosASCII;
  22. }
  23.  
  24. public static void imprimirArreglo(byte[] arregloBytes)
  25. {
  26. int i;
  27. for(i = 0;i < arregloBytes.length;i++)
  28. {
  29.   System.out.println(""+(int)arregloBytes[i]);
  30. }
  31. }
  32. }
  33.  

Aqui el problema es que por ejemplo si tengo en el String ="Hola", ¿cómo hago para que en el arregloBytes, en una sola casilla tenga almacenados TODOS los codigos ASCII del caracter, si tengo H su ascii decimal será 72, su octal 036 y su hexadecimal 48.

y tampoco se bien como utilizar el metodo getBytes()

de antemano gracias


En línea

madara1412

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: Almacenar cadenas en arreglos de bytes
« Respuesta #1 en: 13 Enero 2015, 02:09 am »

aqui un ejemplo de como usar getBytes ... igual no entendi lo que nesitas

Código
  1.        String a="hola";
  2.        byte[] plainTextBytes = a.getBytes("utf-8");
  3.  
  4.        System.out.println(plainTextBytes);
  5.  

se le pone utf-8 por la misma razón que en el html para que reconozca simbolos ,tildes  etc .....


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
arreglos de cadenas
Java
sauce19 5 4,274 Último mensaje 5 Agosto 2011, 11:11 am
por Debci
Almacenar una planilla de Jugadores(Nombre,Edad, Altura,etc.) en tipos arreglos.
Programación General
Cleaner 1 4,304 Último mensaje 14 Marzo 2016, 06:31 am
por El Benjo
Almacenar en arreglos en byte[]
Java
alexis33de 1 2,667 Último mensaje 19 Septiembre 2017, 19:25 pm
por ivancea96
problema al leer y almacenar cadenas en C
Programación C/C++
JosselynGreen 2 2,649 Último mensaje 2 Diciembre 2019, 00:32 am
por ThunderCls
Almacenar bytes en un char ¡¡AYUDA!!
Programación C/C++
rootLink 1 4,677 Último mensaje 13 Octubre 2022, 17:21 pm
por RayR
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines