Array
(
)

Ajudem plzzz ...

Smoketapi
   - 24 mar 2009

Ajudem plzz ...

Preciso fazer um programa q leia um arquivo de HTML , armazene as tag´s em uma pilha e vá testando , cada vez q ele axar um codigo para fexar a determinada tag ele vai desempilhando e se essa pilha estiver vazia no final , o HTML estará normal ... Mas num tenho noção de como vo ler o arquivo HTML e armazenar as TAG´s numa pilha ...


Codename.v
   - 30 mar 2009

Um arquivo HTML não é nada mais que um simples arquivo de texto. Sendo assim, pesquise sobre as funções fopen(), fclose(), feof(), fgetc() da biblioteca STDIO.H. Segue um exemplo:

#Código


/*
============================================================================
Name : Teste.c
Author : Codename V
Version :
Copyright : Forum DevMedia
Description :
============================================================================
*/

#include <stdio.h>
include <stdlib.h>

int main(int argc, char *argv[]) {

FILE *fp; //Cria um novo ponteiro de arquivo chamado fp.
char ch;

//Verifica o número de argumentos passados para a aplicação.
if(argc != 2){
printf("Erro de parametros!");
exit(1);
}

//Abre o arquivo especificado como somente leitura "r"
//e adiciona seu endereço ao ponteiro fp. Se fp for nulo
//significa que houve um erro na abertura do arquivo.
if((fp = fopen(argv[1], "r")) == NULL){
printf("Erro ao abrir o arquivo. \n");
exit(1);
}

//A funcao feof() verifica se o arquivo terminou. Sendo assim,
//o loop while vai rodar até que o arquivo seja processado por
//completo caractere por caractere.
while(!feof(fp)){

//Pega o caractere que esta sendo lido no memento e adiciona
//ele na variável ch e em seguida exibe o mesmo na tela.
ch = fgetc(fp);
if(!feof(fp)) putchar(ch);
}

return EXIT_SUCCESS;
}


Esse é um programinha em console em C e o nome do arquivo é passado chamado o programa da seguinte forma: nome_do_programa.exe nome_do_arquivo.html.

Abraços!