Visor hexadecimal


jueves, 26 de octubre de 2023 Dificultad: Intermedio

Objetivo

Cree un visor hexadecimal en Java que muestre el contenido de un archivo binario en pantalla de la siguiente manera:

  • 16 bytes por cada fila
  • 24 filas en pantalla

Los 16 bytes se mostrarán primero en hexadecimal y luego como caracteres imprimibles. Además deberás sustituir los bytes menores a 32 (caracteres no imprimibles) por puntos.

Muestre en pantalla 24 filas de 16 bytes cada vez que el usuario presione Enter.

Entrada

Salida

00000000  4d 5a 90 00 03 00 00 00 04 00 00 00 ff ff 00 00 MZ?.........ÿÿ..
00000010  b8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 ¸.......@.......
00000020  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030  00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 ............?...
00000040  0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd 21 54 68 ..º..´.Í!¸.LÍ!Th
00000050  69 73 20 70 72 6f 67 72 61 6d 20 63 61 6e 6e 6f is program canno
00000060  74 20 62 65 20 72 75 6e 20 69 6e 20 44 4f 53 20 t be run in DOS
00000070  6d 6f 64 65 2e 0d 0d 0a 24 00 00 00 00 00 00 00 mode....$.......
00000080  50 45 00 00 4c 01 03 00 b2 7c cd cf 00 00 00 00 PE..L...²|ÍÏ....
00000090  00 00 00 00 e0 00 22 00 0b 01 30 00 00 0a 00 00 ....à."...0.....
000000a0  00 08 00 00 00 00 00 00 66 28 00 00 00 20 00 00 ........f(... ..
000000b0  00 40 00 00 00 00 40 00 00 20 00 00 00 02 00 00 .@....@.. ......
000000c0  04 00 00 00 00 00 00 00 06 00 00 00 00 00 00 00 ................
000000d0  00 80 00 00 00 02 00 00 00 00 00 00 03 00 60 85 .?............`?
000000e0  00 00 10 00 00 10 00 00 00 00 10 00 00 10 00 00 ................
000000f0  00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 ................
00000100  13 28 00 00 4f 00 00 00 00 40 00 00 bc 05 00 00 .(..O....@..¼...
00000110  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000120  00 60 00 00 0c 00 00 00 6c 27 00 00 38 00 00 00 .`......l''..8...
00000130  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000140  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000150  00 00 00 00 00 00 00 00 00 20 00 00 08 00 00 00 ......... ......
00000160  00 00 00 00 00 00 00 00 08 20 00 00 48 00 00 00 ......... ..H...
00000170  00 00 00 00 00 00 00 00 2e 74 65 78 74 00 00 00 .........text...

Solución

Haz clic aquí para ver la solución del ejercicio

Compártelo

Compártelo en tus redes sociales y desafía a tus amigos a resolver problemas de programación. Juntos, podemos aprender y crecer.

Copiado

El codigo se ha copiado correctamente en el portapapeles.

Más Ejercicios

Continua mejorando tus habilidades de programación en Java con nuestra selección de ejercicios prácticos de la lección. ¡Haz clic en Practicar y desafía tus conocimientos!

1

Leer etiquetas ID3 v1 de archivo MP3

Cree un programa en Java que lea las etiquetas de la especificación ID3 v1 desde un archivo de música MP3.

2

Leer dimensiones de imagen BMP

Cree un programa en Java para leer las dimensiones de una imagen con formato Windows bitmap.

3

Cifrar una imagen BMP

Cree un programa en Java para cifrar una imagen con formato Windows bitmap.

4

Archivo invertido

Cree un programa en Java que invierta todos los bytes de un archivo binario.

5

Copiador de archivos

Cree un programa en Java que realice copias de archivos tanto de texto como binarios.

6

Dividir archivos

Cree un programa en Java que divida archivos de texto o binarios en partes de 5 Kb cada una.

7

Visor hexadecimal

Cree un visor hexadecimal en Java que muestre el contenido de un archivo binario en pantalla de la siguiente manera.

Archivos binarios

Practica con ejercicios en Java para gestionar ficheros binarios. Aprende como crear, actualizar y buscar de diferentes formas en archivos binarios.

Ejercicios prácticos

Seguir aprendiendo

Curso de Programación en C#

Curso de programación gratuito con ejercicios y soluciones prácticas en C#. ¡Comienza a aprender ahora mismo!

Exercises C# App

Lleva tus lecciones de Exercises C# a todas partes con nuestra aplicación para Android. Descárgala ahora desde Google Play.