2007년 03월 31일
크롤러 프로토타입 中
대충 커넥션하고
헤더에서 charset을 추출하여
해당 캐릭터 셋으로 변환
RE r = new RE( "Content-Type: text\\/html; charset=(.*)" );
String charset = "ISO-8859-1";
byte [] byteBuffer;
while( null != (byteBuffer = readRawLine(connection.getInputStream())) ) {
if( r.match(new String(byteBuffer)) == true ) {
charset = r.getParen( 1 );
}
resultData.append( new String(byteBuffer,charset) );
}
public byte[] readRawLine( InputStream inputStream )
throws IOException {
ByteArrayOutputStream buf = new ByteArrayOutputStream();
int ch;
while( (ch = inputStream.read()) >= 0 ) {
buf.write( ch );
if( ch == '\n' ) {
break;
}
}
if( buf.size() == 0 ) {
return null;
}
return buf.toByteArray();
}
조금 모양 갖춰지면 공개할지도 ㅎㅎ
# by | 2007/03/31 13:21 | 개발 | 트랙백 | 덧글(0)






☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]