[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/16 23:57 / Filesize : 220 KB / Number-of Response : 907
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★Java質問・相談スレッド139★★



394 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 16:38:16 ]
// h.java (c)1999-2004 W.Finlay McWalter. Licence: GPLv2.0
// v1: me: initial version
// v2: me: squished down by four lines
// v3: Jonathan Headland: removed a couple of redundant checks
// v4: Engelbert Gruber: changed input stream to a BufferedReader
// v5: me: small speedup/codesize-reduction in writeBytes length code
// v6: Luke: replaced StringTokenizer with split, saving two lines
// v7: Luke: made FileInputStream anon me: GET->GE
//-----------------------------------------------------------------
import java.net.*;import java.io.*;public class h extends Thread{
Socket c;public h(Socket s){c=s;start();}public static void main(
String[]a){try{ServerSocket s=new ServerSocket(8181);for(;;){new h(
s.accept());}}catch(Exception e){}}public void run(){try{
BufferedReader i=new BufferedReader(new InputStreamReader(c.
getInputStream()));DataOutputStream o=new DataOutputStream(c.
getOutputStream());try{String s,p;while((s=i.readLine()).length()>0
){if(s.startsWith("GE")){p=(s.split(" "))[1];p=("."+(p.endsWith("/"
)?p+"index.html":p)).replace('/',File.separatorChar);int l=(int)new
File(p).length();byte[]b=new byte[l];new FileInputStream(p).read(b)
;o.writeBytes("HTTP/1.0 200 OK\nContent-Length:"+l+"\n\n");o.write(
b,0,l);}}}catch(Exception e){o.writeBytes("HTTP/1.0 404 ERROR\n\n")
;}o.close();}catch(Exception e){}}}






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<220KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef