Widzę, że trochę stary ten temat, ale mam podobny problem (krzaczki zamiast poskich znaków) w wersji C++ Builder XE2. Dla metody Get pomógł mi ten kod:
KOD cpp: UKRYJ
String kodHtml, kodHttp;
String zadanyUrl = "http://katalog-jarmi.pl/dom,i,wnetrze/paszport,energetyczny,wroclaw,s,7305/";
TStringStream *webPage = new TStringStream(NULL, TEncoding::GetEncoding(65001), true); // 65001 - utf-8 - Unicode (UTF-8)
try
{
IdHTTP1->HandleRedirects = true;
IdHTTP1->ConnectTimeout = 8000;
IdHTTP1->ReadTimeout = 8000;
IdHTTP1->AllowCookies = true;
IdHTTP1->Request->AcceptEncoding = "deflate";
//kodHtml = IdHTTP1->Get(zadanyUrl);
IdHTTP1->Get(zadanyUrl, webPage);
kodHttp = IdHTTP1->ResponseText;
}
catch(EIdSocketError &e)
{
kodHttp = e.Message.Trim();
ShowMessage(kodHttp);
return;
}
catch(Exception &exception)
{
kodHttp = exception.Message;
ShowMessage(kodHttp);
return;
}
Memo1->Lines->SetText(webPage->DataString.t_str());
/*
Można też tak:
kodHtml = webPage->DataString;
Memo1->Lines->SetText(kodHtml.t_str());
lub tak:
kodHtml = webPage->DataString;
Memo1->Lines->Text = kodHtml; // lub po prostu: Memo1->Lines->Text = webPage->DataString;
a tego sposobu nie polecam:
kodHtml = webPage->DataString;
Memo1->Text = kodHtml;
*/
String zadanyUrl = "http://katalog-jarmi.pl/dom,i,wnetrze/paszport,energetyczny,wroclaw,s,7305/";
TStringStream *webPage = new TStringStream(NULL, TEncoding::GetEncoding(65001), true); // 65001 - utf-8 - Unicode (UTF-8)
try
{
IdHTTP1->HandleRedirects = true;
IdHTTP1->ConnectTimeout = 8000;
IdHTTP1->ReadTimeout = 8000;
IdHTTP1->AllowCookies = true;
IdHTTP1->Request->AcceptEncoding = "deflate";
//kodHtml = IdHTTP1->Get(zadanyUrl);
IdHTTP1->Get(zadanyUrl, webPage);
kodHttp = IdHTTP1->ResponseText;
}
catch(EIdSocketError &e)
{
kodHttp = e.Message.Trim();
ShowMessage(kodHttp);
return;
}
catch(Exception &exception)
{
kodHttp = exception.Message;
ShowMessage(kodHttp);
return;
}
Memo1->Lines->SetText(webPage->DataString.t_str());
/*
Można też tak:
kodHtml = webPage->DataString;
Memo1->Lines->SetText(kodHtml.t_str());
lub tak:
kodHtml = webPage->DataString;
Memo1->Lines->Text = kodHtml; // lub po prostu: Memo1->Lines->Text = webPage->DataString;
a tego sposobu nie polecam:
kodHtml = webPage->DataString;
Memo1->Text = kodHtml;
*/
Potrzebuję coś podobnego dla metody Post... Nie wiem jak się za to zabrać...




