Назад | Начало урока | Вперед
Содержание

Глава 1 (продолжение 1)

Программа - "обезвреживатель" тегов.
Задача:Требуется обезвредить следующие два тега: < и >

При переводе текстов в html-формат часто приходится решать эту задачу. Так как теги не видны на html-странице. Чтобы теги были видны и не работали, надо вместо тега напечатать три символа & lt или & gt

Программа 01_04


// Example_01_04 Обезвреживатель тегов
#include <fstream.h>
#include <iostream.h>
#include <string.h>

//using namespace std;

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

ifstream from1("text1");//открываем файл для считывания
if(!from1) {

cout<<"Vhodnoi fail ne naiden:" ;
return (1);
}

ofstream to1("text2" ); // open for writing
if(!to1) {

cout<<"Vyhodnoi fail ne naiden:" ;
to1.close(); // always pays to be tidy
return (1);
}

int i = 0;
int m = 0;
char buf[1024];
char buf1[2048];
char buf3[] = "<";

while (!from1.eof()) {

from1.getline(buf,sizeof(buf));
m=0;
for(int i = 0;i<=1024;i++)

{

char a = buf[i];

if(a =='<') {

buf1[m] = '&';
m = m+1;
buf1[m] = 'l';
m = m+1;
buf1[m] = 't';
m = m+1;
continue;

}


if(a =='>') {

buf1[m] = '&';
m = m+1;
buf1[m] = 'g';
m = m+1;
buf1[m] = 't';
m = m+1;
continue;

}

buf1[m] = buf[i];
m = m+1;

}

to1 << buf1 << "\n"; // and write it to the file

}

from1.close(); // always pays to be tidy
to1.close(); // always pays to be tidy

return 0;

}


Назад | Начало урока | Вперед
Содержание

Hosted by uCoz