hexfile - conversor de binario/hexadecimal
Publicado por Perfil removido (última atualização em 09/01/2026)
[ Hits: 661 ]
Esse programa faz a leitura de um arquivo binário, por exemplo, um *.png e converte para um arquivo de texto *.hex, onde se encontra os valores hexadecimal, e também pode compilar um *.hex de volta para *.png, caso queira!
modo de usar:
abrir
./hexfile -a imagem.png
compilar
./hexfile -f imagem.png.hex
#include <stdio.h>
#include <string.h>
#include <errno.h>
int main(int argc, char *argv[]){
// abre e fecha arquivos
FILE *fileOpen, *fileClose;
// byte a byte
int byte = 0;
// uso ./hexfile -a (abrir)
// ou ./hexfile -f (fechar)
if(strcmp(argv[1], "-a") == 0){
fileOpen = fopen(argv[2], "r");
// caso der merda
if(fileOpen == NULL){
perror("Erro de leitura");
return 1;
}
// concatenação com extenção .hex
char name[256];
strcpy(name, argv[2]);
strcat(name, ".hex");
fileClose = fopen(name, "w");
// caso der merda
if(fileClose == NULL){
perror("Erro de escrita");
return 1;
}
/* captura um byte de cada vez e escreve
em um arquivo *.hex */
while((byte = fgetc(fileOpen)) != EOF){
fprintf(fileClose, "%X ", byte);
}
// fecha
fclose(fileOpen);
fclose(fileClose);
} else if(strcmp(argv[1], "-f") == 0){
// faz a edição para nome original
char name[256];
strcpy(name, argv[2]);
name[strlen(name)-4]='\0';
fileOpen = fopen(argv[2], "r");
// caso der merda
if(fileOpen == NULL){
perror("Erro de leitura");
return 1;
}
fileClose = fopen(name, "wb");
if(fileClose == NULL){
perror("Erro de escrita");
}
// faz a leitura do *.hex e salva binario
while(fscanf(fileOpen, "%X", &byte) == 1){
fputc((unsigned char)byte, fileClose);
}
// fecha
fclose(fileOpen);
fclose(fileClose);
}
else{
// help
printf("use: ./hexfile -a [arquivo]\n");
printf("use: ./hexfile -f [arquivo]\n");
}
return 0;
}
Agenda (fones, compromissos, aniversários) em C usando arquivos binários
FileCopy - Copiador de Arquivo de Texto
Arquivo com números aleatórios.
Cadastor de Produtos em C e metodos ordenação
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Instale o DOOM Retro no Gentoo facilmente via Overlay
Steam (Flatpak) rodando jogos em partição NTFS
O dock Plank + U-Launcher deixam qualquer desktop mais produtivo
Instalar Linux em notebook Sony Vaio VPCEG13EB (17)
Alguém tem que acabar com ANATEL!!! (10)
O que você está ouvindo agora? [2] (229)









