Conversão de arquivos texto entre Windows e Linux
Publicado por Perfil removido (última atualização em 06/05/2010)
[ Hits: 9.674 ]
Programa simples que converte arquivos txt gerados no Linux para serem abertos sem conflitos no Windows e vice-versa.
#include <stdio.h> /* Rotina que converte arquivos texto criados no Linux para que sejam abertos sem conflitos no Microsoft Windows; Recebe como parâmetros: 1. Arquivo de Origem 2. Arquivo de Destino A função não retorna valor */ void linToWin(FILE *origem, FILE *destino) { char c; while ((c=fgetc(origem)) != EOF) { if (c==10) { c = 13; fwrite(&c, 1, 1, destino); c = 10; fwrite(&c, 1, 1, destino); } else fwrite(&c, 1, 1, destino); } } /* Rotina que converte arquivos texto criados no Microsoft Windows para que sejam abertos sem conflitos no Linux; Recebe como parâmetros: 1. Arquivo de Origem 2. Arquivo de Destino A função não retorna valor */ void winToLin(FILE *origem, FILE *destino) { char c; while ((c=fgetc(origem)) != EOF) { if (c!=10) fwrite(&c, 1, 1, destino); } } /* Rotina que imprime ao usuário uma pequena ajuda a ser impressa na tela caso haja algum erro. */ void help() { printf("Uso:\n"); printf("De Windows para Linux\n"); printf("./convtxt wl arquivoOrigem arquivoDestino\n"); printf("De Linux para Windows\n"); printf("./convtxt lw arquivoOrigem arquivoDestino\n"); } /* Rotina principal */ int main(int argc, char *argv[]) { FILE *origem, *destino; int escolha; if (argc!=4) { help(); return 1; } if (strcmp(argv[1], "lw")==0) escolha=2; else if (strcmp(argv[1], "wl")==0) escolha=1; else { help(); return 1; } origem = fopen(argv[2], "r"); if (!origem) { printf("Não foi possível abrir o arquivo \"%s\"...\n", argv[2]); help(); return 1; } destino = fopen(argv[3], "w"); if (!destino) { printf("Não foi possível abrir o arquivo \"%s\"...\n", argv[3]); help(); return 1; } if (escolha==1) winToLin(origem, destino); else linToWin(origem, destino); fclose(origem); fclose(destino); }
Listar arquivos e diretórios com suas propriedades
Copia uma linha selecionada para um arquivo secundário
Nenhum comentário foi encontrado.
Agora temos uma assistente virtual no fórum!!! (246)
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como eu faço para ativar o sistema de gestos do mousepad? (4)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (13)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta