求助,如何读取网上的一个txt文件

vivivivi 2003-10-02 10:56:49
我在编程过程中,原来使用的文本txt读取是在单机上面的,很成功,可是把txt文件放到网上(http://www.myweb.com/a.txt)调用的时候却总是不成功,求一个解决方法,最好给个例子。我把完整的虚拟路径都写了阿(就像上面)。
...全文
48 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vivivivi 2003-10-03
  • 打赏
  • 举报
回复
多谢大家,虽然没有解决问题,但是我还是结了他,哎,这样都不好解决
xsc2001 2003-10-03
  • 打赏
  • 举报
回复
用我的方法:
CHttpFile* fileGet;
CException* e;
TRY
{
fileGet=(CHttpFile*)sess.OpenURL((char*)strURL);//strURL就是你的文本文件的http地址
}
CATCH_ALL(e)
{
fileGet = 0;
}
END_CATCH_ALL

if(fileGet)
{
DWORD dwStatus;
DWORD dwBuffLen = sizeof(dwStatus);
BOOL bSuccess = fileGet->QueryInfo(
HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER,
&dwStatus, &dwBuffLen);

if( bSuccess && dwStatus>= 200&& dwStatus<300 )
{
while(fileGet->ReadString(strSentence))
m_FileContent+=strSentence;
}// if bSuccess.
fileGet->Close();
delete fileGet;
}
sess.Close();
SeekInRain 2003-10-03
  • 打赏
  • 举报
回复
使用HTTP协议
http://www.myweb.com/a.txt

伪代码:

tcp.connect("www.myweb.com", port=80)
if(tcp.connected = true) then do
{
tcp.send("GET /a.txt HTTP/1.1CRLFx2")
tcp.recv(buff)
if(statuscode(buff) == 200) then do
{
while(recv(buff))
{
writefile(buff)
}
}
tcp.closeconnection;
}
whoishere 2003-10-02
  • 打赏
  • 举报
回复
本地文件访问和HTTP文件访问是不一样的!!!

要访问HTTP文件,请使用CHttpFile,具体请参见MSDN
Onega 2003-10-02
  • 打赏
  • 举报
回复
UrlDownloadToFile

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧