C++ 在html文件上使用getline
我的任务是在html文件中搜索证书信息,并将结果放入文本文件。我想用getline来做,但不知怎么的,它不起作用。我在文本文件上使用getline没有问题,所以我假设您不能在html文件上使用getline。这个假设正确吗?如何将此类文件转换为文本文件?或者有更好/更简单的解决方案?谢谢 代码如下:(变量的名称不是英文的,我希望这不是问题)C++ 在html文件上使用getline,c++,html,getline,C++,Html,Getline,我的任务是在html文件中搜索证书信息,并将结果放入文本文件。我想用getline来做,但不知怎么的,它不起作用。我在文本文件上使用getline没有问题,所以我假设您不能在html文件上使用getline。这个假设正确吗?如何将此类文件转换为文本文件?或者有更好/更简单的解决方案?谢谢 代码如下:(变量的名称不是英文的,我希望这不是问题) #包括 #包括 #包括 使用名称空间std; 字符串nazwa_wejsciowego; 弦乐机器人; ifstreamhtml; ifstream-txt
#包括
#包括
#包括
使用名称空间std;
字符串nazwa_wejsciowego;
弦乐机器人;
ifstreamhtml;
ifstream-txt(“wynik.txt”);
int main()
{
不,这个假设是不对的。HTML是文本;事实上,它是一种结构化格式,可以由计算机解析以呈现网页,这与读取文件中的单个字符无关
getline
可能是一种合适的方法,不过,正如Steve在评论中指出的那样,一些HTML页面被“缩小”(它们删除了不必要的空白以节省空间并使代码更难复制)而且,在这种情况下,您可能只会得到一行非常大的代码。因此,以字节为单位阅读可能更方便。html是基于文本的,因此您可以毫无问题地使用getline。如果您的代码遇到特定问题,您将需要发布代码…除非html已经缩小。然后getline会让您听到一声巨大的l我已经尽我所能回答了。如果不知道“不知何故它不起作用”是什么意思,我就无法解决你问题的根本原因。
#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;}