<p>La <b>informática</b> es la disciplina que estudia el tratamiento automático de la información ...
Se dispone del fichero vinculos.txt donde se guardan las palabras clave y sus enlaces relacionados. Cada línea contiene los siguientes campos separados por una coma:
Palabra clave
Enlace
El fichero vinculos.txt debe cargarse en un mapa que tenga como clave la palabra clave y como información asociada el vínculo correspondiente a dicha palabra clave.
Consideraciones importantes:
Los separadores de las palabras pueden ser los siguentes caracteres: ' ' , ',' , '.' , ':' , ';' , '\n'
Las palabras clave en el mapa se encuentran en minúsculas
Cada clave consta de una única palabra (no se han incluído claves compuestas de más de una palabra)
El programa esperará dos parámetros de entrada, el primero de ellos será el fichero html a formatear, y el segundo el fichero donde se encuentran las palabras claves y sus enlaces.
Por ejemplo para la siguiente línea de texto:
<p>La <b>informática</b> es la disciplina que estudia el tratamiento automático de la información ...
El programa deberá localizar información como palabra clave y transformar la línea en:
<p>La <b>informática</b> es la disciplina que estudia el tratamiento automático de la < title="información">información</a> .....
La implementación constará de dos ficheros:
Con la declaración de la clase enlazador
Con la implementación de la clase enlazador y el programa principal que permita probarla
Se suministra el fichero enlazador.h con la declaración completa de la clase.
#ifndef ENLAZADOR_HH
#define ENLAZADOR_HH
#include <string>
#include <map>
using namespace std;
class enlazador
{
public:
enlazador(string nomf1, string nomf2);
~enlazador();
private:
// mapa: clave:palabra valor=enlace
map<string, string> vinculos;
// Carga mapas a partir de fichero
void Carga_Vinculos(string nomf);
// Transforma el fichero creando los vínculos encontrados
void Transforma_Fichero(string nomf);
// Copia un fichero en otro
void Copiar_Fichero(string nomf1, string nomf2);
};
#endif
Se proporciona el fichero Informatica.html (es una versión simplificada de la entrada Informática en la Wikipedia) para realizar las pruebas de ejecución del programa.
La documentación sobre las STL puede encontrarse en /iilabs/AED2/STL_doc.tar.gz o consultarse en /iilabs/AED2/STL_doc.
|
Nota
|
Esta práctica dura una sesión y debe entregarse a través del aula virtual el fichero enlazador.cpp antes del comienzo de la práctica 2 |