
25.12.2008, 23:29
|
|
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
С нами:
10535289
Репутация:
107
|
|
проблемка с wininet
Обьясните,в чем прикол с кодировкой при использование wininet
Такой вот код
Код:
char *data=new char[1024*1024]; DWORD rb;
char agent[1024]="User-Agent: Opera/9.62 (Windows NT 5.1; U; ru) Presto/2.1.1";
HINTERNET II=InternetOpen(agent,INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY,0,0,0);
HINTERNET CC=InternetConnect(II,"site.com",INTERNET_DEFAULT_HTTP_PORT,0,0,INTERNET_SERVICE_HTTP,0,0);
HINTERNET RR=HttpOpenRequest(CC,"GET","index.php", NULL,0,0,INTERNET_FLAG_KEEP_CONNECTION,1);
HttpSendRequest(RR,0,0,0,0);
InternetReadFile(RR,data,1024*1024,&rb);
InternetCloseHandle(II);
InternetCloseHandle(CC);
InternetCloseHandle(RR);
Memo1->Text=AnsiString(data);
HANDLE h=CreateFile("\\\\.\\C:\\1.html",GENERIC_WRITE,FILE_SHARE_WRITE,NULL,CREATE_ALWAYS,FILE_FLAG_RANDOM_ACCESS,NULL);
WriteFile(h,data,strlen(data),&rb,0);
CloseHandle(h);
В мемо тект выглядит нормально.А если открыть файл в опере то там крякозяблы из за левой(хз какой)кодировки.Как задать нужную кодировку?
|
|
|

26.12.2008, 01:36
|
|
Постоянный
Регистрация: 19.10.2007
Сообщений: 794
С нами:
9769287
Репутация:
711
|
|
браузер сам должен выбрать нужную кодировку, исходя из содержимого файла. если не выбирает, значит, думаю содержимое кривое в файле
|
|
|

26.12.2008, 10:16
|
|
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
С нами:
10097606
Репутация:
3349
|
|
Вообще кодировка может быть любой, начиная от win-1251 и заканчивая юникодом. Это зависит с какого сайта тянеш данные. По этому в файле у тебя всё будет в той кодировке которую пришлет сайт. Вообще в начале страницы должен распологаться тип кодировки типа (<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" >), и если его нет, то могут возникнуть глюки вот такие вот. Особенно в рускоязычных прогах, где подефолту стоит кодировка win-1251. Так что в wininetом всё впорядке )
|
|
|

26.12.2008, 16:05
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
С нами:
10139366
Репутация:
1502
|
|
Сообщение от slesh
Вообще в начале страницы должен распологаться тип кодировки типа (<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" >)
Так вроде на самом деле не рекомендуется делать, ибо, к примеру, некоторые проксики перекодирую страницу, и тогда что-то нехорошее может произойти
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

26.12.2008, 18:21
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
С нами:
11099536
Репутация:
518
|
|
а с сайта идет случайно не с gzip-ованный??? 8)))
а то ведб можно и на зипованный код тупо пялиться! 8)))
... нада тестировать... с вининетом (сможет он gzip на лету обработать) 
Последний раз редактировалось Delimiter; 26.12.2008 в 18:59..
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|