|
|
|
| Если кто знает, на PHP есть такая функция file:
array file (string filename [, int use_include_path])
которая читает весь файл в массив. Если string filename будет URL-адрес, она вовзращает массив с HTML-кодом этой страницы.
Есть ли анолагичная функция в C++ Builder, или как мне это осуществить?
Спасибо | |
|
|
|
|
|
|
|
для: GS-Stas
(31.07.2006 в 17:22)
| | Нет, в С++ файл читается построчно при помощи функции fgets() или аналогов... А лучше использовать API-функции - не переносимо, зато очень шустро
DWORD bytes_read, bytes_debug;
String strBegin;
// Read exec.ini
HANDLE hSrc = CreateFile("exec.ini", GENERIC_READ, 0, NULL, OPEN_EXISTING , FILE_FLAG_SEQUENTIAL_SCAN, NULL);
if(hSrc == INVALID_HANDLE_VALUE)
{
MessageBox(NULL, "Error in opening exec.ini file", "Autorun", MB_OK|MB_ICONSTOP);
return -1;
}
DWORD bytes_number = GetFileSize(hSrc, &bytes_debug);
char *buffer = new char[bytes_number];
if(!ReadFile(hSrc, buffer, bytes_number, &bytes_read, NULL))
{
CloseHandle(hSrc);
delete [] buffer;
MessageBox(NULL, "Error in reading exec.ini file", "Autorun", MB_OK|MB_ICONSTOP);
return -1;
}
CloseHandle(hSrc);
String buff(buffer);
delete [] buffer;
|
Содержимое файла в переменной String buff - остаётся только разбить содержимое на части | |
|
|
|
|
|
|
|
для: cheops
(31.07.2006 в 17:31)
| | А нельзя ли точнее объяснить, как это осуществить.
Пусть это будет строка, например объекту Label1 присвоить HTML-код страницы, пожалуйста, очень сложно, я никогда не писал на С, но мне нужна только это функция.
т.е. при нажатии на кнопку Button1, Label1 принимала текст HTML-кода страницы http://chat.beltsy.md
Спасибо | |
|
|
|
|
|
|
|
для: GS-Stas
(04.08.2006 в 20:41)
| | С++ не обладает встроенными сетевыми возможностями, как PHP, тут придётся помимо этого либо обращаться к библиотеке сокетов, либо к другой библиотеки, позволяющей работать по протоколу HTTP. | |
|
|
|
|
|
|
|
для: cheops
(04.08.2006 в 22:06)
| | Последовал вашему совету, и нарыл такую информацию на форуме по адресу http://progz.ru/forum/index.php?showtopic=1031
Не подскажет кто, как определить закачена ли страница целиком или нет, я делал так:
HTTP запрос типа такого:
"GET http://www.codenet.ru/ HTTP/1.0rn
Connection: Closern
Host: www.codenet.rurn
rn"
Код//------
while(pSocket && pSocket->Active){
if(!pStream->WaitForData(FTimeOut)){
if(pStream->Read(Buf,FBufLen))!=0){
FBody+=AnsiString(Buf);
FRecvdBytes+=strlen(Buf);
ZeroMemory(Buf,FBufLen);
}else pSocket->Close();
Application->ProcessMessages();
Sleep(10);
}else pSocket->Close();
}
//------
|
По моему, это как раз то, что мне нужно, ведь он получает в результате запроса, целую страницу (подробности, прошу прочитать на форуме http://progz.ru/forum/index.php?showtopic=1031). Хочу попросить вас подсказать, это именно то, что мне требуется, и если так оно и есть, то как осуществить, повторюсь, присвоение объекту Label1->Caption, при нажатии на Button1 HTML-кода запрашиваемой страницы.
Спасибо.. | |
|
|
|
|
|
|
|
для: GS-Stas
(31.07.2006 в 17:22)
| | А может кто подскажет, как хотя бы сделать, чтоб при нажатии Button1 HTML-код страницы http://softtime.ru присваивался Memo1->Line
ПОЖАЛУЙСТА,.. и Спасибо | |
|
|
|
|
|
|
|
для: GS-Stas
(08.08.2006 в 09:14)
| | Спасибо за бесполезность | |
|
|
|
|
|
|
|
для: GS-Stas
(16.08.2006 в 10:01)
| | Всегда рады! | |
|
|
|