C++ 获取文件中的值并使用CreateFile将值放入变量中
我正在尝试编写一个代码,该代码将读取多个URL,并使用windows APIC++ 获取文件中的值并使用CreateFile将值放入变量中,c++,windows,api,C++,Windows,Api,我正在尝试编写一个代码,该代码将读取多个URL,并使用windows APIReadFile将URL的每个值放入一个变量中 比如说 变量 stringurlone stringurltwo url.txt的内部 www.stackoverflow.com www.reddit.com 我关心的是,是否可以使用ReadFile或任何windows API函数获取值并将其放入变量中 从上面的示例中,将发生的是stackoverflow.com将成为变量urlone的值,与下一个URL相同,即redd
ReadFile
将URL的每个值放入一个变量中
比如说
变量
stringurlone代码>
stringurltwo代码>
url.txt的内部
www.stackoverflow.com
www.reddit.com
我关心的是,是否可以使用ReadFile
或任何windows API函数获取值并将其放入变量中
从上面的示例中,将发生的是stackoverflow.com
将成为变量urlone
的值,与下一个URL相同,即reddit.com
将成为变量urltwo
的值
我知道使用fstream
将帮助我解决这个问题,但我只想知道是否还有其他类似使用windowsapi的方法
注意:我尝试使用ReadFile
,它获取所有URL并将值放入1个变量中
//reading url.txt
openFile = CreateFile(L"C:\\Documents and Settings\\Administrator\\My Documents\\url.txt", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
//reading the content, on this code, all the URLs will be inside of strVal
rewriFile = ReadFile(openFile, strVal, fSize, &dwNoBytetoRead, NULL);
cout << "The URL is " << strVal << endl;
//读取url.txt
openFile=CreateFile(L“C:\\Documents and Settings\\Administrator\\My Documents\\url.txt”,通用读取,文件共享读取,NULL,打开现有,文件属性正常,NULL);
//阅读内容时,在这段代码中,所有的URL都将位于strVal内部
rewriFile=ReadFile(openFile、strVal、fSize和dwNoBytetoRead,NULL);
cout是的,如果需要,可以使用ReadFile
解决。使用ReadFile
simpel方法可以是:
使用ReadFile
将整个文件读入缓冲区(我建议使用
std::string
和调整大小
)
使用任何东西来解析字符串,对于simpel解析,
std::istringstream
可以使用
巧合的是,如果std::istringstream
足以解析您的格式(我99%确定它是),那么可能是std
流类真正闪耀的情况,因为您可以使用std::ifstream
来完成这两项工作 你仍然有你以前的错误。重复,ReadFile()是低级的,只读取字节。不是字符串。“strVal”变量将不会有正确的以零结尾的字符串。dwNoBytetoRead告诉您将0放置在何处。将字节拆分为文本行是它不会做的事情。标准C++库为您这样做,STD::GETLIN()是您的朋友。