Использование getline в html-файле

У меня есть это задание для поиска Certian информации в HTML-файл и положить результат в текстовый файл. Я хотел сделать это с помощью getline, но почему-то это не работает. У меня нет проблем с использованием getline для текстового файла, поэтому я предположил, что вы не можете использовать getline для html файла. Это предположение верно? Как я могу преобразовать такой файл в текстовый файл? Или, может быть, есть лучшее / более простое решение? Спасибо.

Вот код: (имена переменных не на английском языке, я надеюсь, что это не проблема)

#include <iostream>
#include <string>
#include <fstream>

using namespace std;

string nazwa_wejsciowego;
string roboczy;
ifstream html;
ifstream txt("wynik.txt");
int main()
{
cout<<"Podaj nazwę pliku html, z ktorego odczytane maja zostac dane."<<endl;
cin>>nazwa_wejsciowego;

ifstream html(nazwa_wejsciowego, ios::app); //opening the file

if(!html){
cout<<"Otwarcie pliku "<<nazwa_wejsciowego<<" nie powiodlo sie."<<endl;
system("pause");}

//checking if it opende properly

getline(html, roboczy);
cout<<roboczy<<endl;

return 0;}

0

Решение

Нет, предположение неверно. HTML является текст; тот факт, что он находится в структурированном формате, который может быть проанализирован компьютером для визуализации веб-страницы, не имеет значения для чтения отдельных символов в файле.

getline может быть подходящим подходом, хотя, как отмечает Стив в комментариях, некоторые HTML-страницы «минимизированы» (в них убраны лишние пробелы, чтобы сэкономить место и сделать код более трудным для копирования), и в таком случае вы можете получить только одна действительно большая линия. Поэтому может быть удобнее читать кусками байтов.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector