¹ØÓÚ linux ÖÐ iconv() º¯Êý µÄÎÊÌâ
×î½üÔÚдspider ÐèÒªÒª½â¾ö ±àÂëת»» ÎÊÌâ Óõ½ iconv() º¯Êý
µ«Ò²²»ÖªµÀ ÄÄÀïÓÐÎÊÌâ ÀÏÊÇÕû²»³öÀ´ ÄÄλ´óÏÀ °ï°ïæ
´úÂë ÈçÏ£º£¨Í·Îļþû¸´ÖÆ£©
//CodeConvert.cpp
#include "CodeConvert.h"
#include "stdlib.h"
#include <string.h>
#include <errno.h>
CCodeConv::CCodeConv(const char *from_charset,const char *to_charset)
{
cd=iconv_open(to_charset,from_charset);
if( cd== (iconv_t) -1 )
{
cout < <"cannot open iconv discripter!" < <endl;
iconv_close(cd);
exit(0);
}
}
CCodeConv::~CCodeConv()
{
iconv_close(cd);
}
bool CCodeConv::Convert(char *inbuf,long inlen,char *outbuf,long outlen)
{
char **pin=&inbuf;
char **pout=&outbuf;
memset(outbuf,0,outlen);
if( -1==iconv(cd,pin,(size_t *)&inlen,pout,(size_t *)&outlen) )
{
cout < <"have error in iconv()!" < <endl;
cout < <errno < <" " < <strerror(errno) < <endl;
return false;
}
return true;
}
#include "CodeConvert.h"
#include <string.h>
int main()
{
char *in="Íõ";
Ïà¹ØÎÊ´ð£º
дÁ˸ö²âÊÔ³ÌÐòÈçÏÂ
struct hostent *hp;
char AlarmDevIP[20];
int x2;
hp = gethostbyname("www.google.com");
if (hp)
{
......
ÏÖÔÚµÄ×ö·¨ÊÇ,ͨ¹ýcrontabÿ·ÖÖÓÖ´ÐÐÒ»¸öphp,Õâ¸öphp¸ºÔð´ÓÊý¾Ý¿âÖÐÈ¡³öÓʼþ,È»ºó·¢ËÍ
ÎÊÌâÊÇ,Èç¹ûÓʼþºÜ¶à,ÿ·ÖÖÓÖ´Ðв»Íê,ÄÇ»áÔì³ÉºÜ¶àphp½ø³Ì
Äܲ»ÄÜʵÏÖµÈÕâ¸öphpÖ´ÐÐÍêÁËÁ¢¼´Æô¶¯Ò»¸öеÄ?²»ÓÃcr ......
д³öÍê³ÉÒÔϹ¦ÄܵÄLinuxÃüÁî:
1) ÔÚµ±Ç°Ä¿Â¼¼°Æä×ÓĿ¼ËùÓеÄ.cppÎļþÖвéÕÒ×Ö·û´®"example", ²»Çø·Ö´óСд;
2) ʹÓÃsedÃüÁî, ½«ÎļþxyzÖеĵ¥´ÊAAAÈ«²¿Ì滻ΪBBB;
3) ÓÃÒ»ÌõÃüÁî´´½¨aa bb ccÈ ......
ÎÒûÓа²×°²Ù×÷ϵͳµÄ¾Ñ飬¼´Ê¹ÊÇWINDOWS¡£ÏÖÔÚÏëÔÚLINUX²Ù×÷ϵͳ´ó»·¾³ÏÂѧCÓïÑÔ£¬ÓÖÒªÂò±¾±¾£¬ÇëÎÊÈç¹û²Ù×÷ϵͳ°²×°²»µ±£¬»á²»»á¶ÔµçÄÔÔì³Éʲô´óµÄÆÆ»µ£¿ÓÐûÓбØÒªÏÈÂòÒ»¸ö¶þÊÖµçÄÔÁ·Ò»ÏÂLINUXµÄ ......
ÔÚlinuxÉÏʹÓÃtomcat·þÎñÆ÷³öÏÖÁ˺ܶàclose_wait
ʹÓÃä¯ÀÀÆ÷·ÃÎʵÄʱºò³öÏÖÒ³ÃæÒ»Ö±ÔÚÇëÇ󣬺ÜÂý £¬»ù±¾ÉÏûÓлØÓ¦¡£
ÓÃnetstat -anp ²é¿´ Óкܶàclose_wait
Õâ¸öÊÇʲôÒýÆðµÄ°¢ £¬Ôõô½â¾ö£¿
......