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


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

Java ネットワークプログラミング 【教えて!】



349 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 09:28:26 ]
InputStream in=con.getInputStream ();
byte[] buf=new byte[1000*1000];
int size=0;

for (int k=0; size<buf.length && (k=in.read())!=-1;)
{
buf[size++]=(byte)k;
}

これはチマチマですが、尻切れぜずにストリーム終わりまで読み込めます。解決策。

>>341

for (;;)
{
int sz=in.read(buf, size, buf.length);
if (size>=buf.length || sz==0 || sz==-1) break;
size+=sz;
}

でも、urlが "www.yahoo.co.jp/"などは例外が出ます。

Exception in thread "main" java.lang.IndexOutOfBoundsException
at sun.net.www.http.ChunkedInputStream.read(Unknown Source)
at java.io.FilterInputStream.read(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(Unkn
own Source)
at Test.main(Test.java:37)

とすると、InputStreamは、int read()ですむのですが、
int read(byte[]), int read(byte[],int,int)は、(どうやって使うかと言うよりも)自分で使うときはどこが使いどころなんでしょうか?






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

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

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