[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends:00469] JAVA のストリームと、 O Sのストリームの仕様の違い?
はじめまして。
下記の問題がおきているのですが、どうすれば、sunが修正を行うように出来るのでしょうか?
public static void main(String[] args) throws Exception {
//大量のテキストを、クリップボードからCMD.EXEにペーストした場合
//落ちない
//Reader in = new InputStreamReader(new FileInputStream(FileDescriptor.in));
//落ちる
Reader in = new InputStreamReader(new BufferedInputStream(new FileInputStream(FileDescriptor.in)));
int ch;
while((ch = in.read()) > 0) {
System.out.print((char)ch);
}
}
問題はどこにあるかというと、
System.out.println(System.in.getClass());
この実行結果が、
class java.io.BufferedInputStream
なので、
Reader in = new InputStreamReader( System.in );
これは、上のケースにあてはめると、「落っこちる」という事になります。
落ちるJDKのバージョンは、以下のとおり。
sun jdk1.1.8 on Windows2000
sun jdk1.3 on Windows2000
sun jdk1.4 on Windows2000
落ちないJDKのバージョンは、以下のとおり。
sun jdk1.2.2 on redhat linux
Microsoft (R) Command-line Loader for Java Version 5.00.3802 on Windows2000
----
YOSHIDA Shintaroh yoshida@xxxxxxxxxxxxxxx
------------------------------------------------------------------------
目指せ!! 商品券20万,旅行券20万,デジカメ,PS2,Xbox…ホームページコンテスト
http://isweb.infoseek.co.jp/hp_daiou/?svx=971122