java中DataInputStream如何读取我们控制台的字符串

java中DataInputStream如何读取我们控制台的字符串
DataInputStream din = new DataInputStream(System.in);
这样读出来的是错误的

java中DataInputStream使用构造参数,使用bufferreader,输入参数system.in就可以读取控制台的字符串,如下代码:

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.IOException;

public class ceshi {
public static void main(String[] args) {

DataInputStream in = new DataInputStream(new BufferedInputStream(
System.in));//新建DateInputSteam,接收控制台的信息
String s;
try {
while ((s = in.readLine()).length() != 0)
System.out.println(s);//读取控制台信息,并打印出来
// An empty line terminates the program
} catch (IOException e) {
e.printStackTrace();
}

}

}

运行结果如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-30
DataInputStream只是一个数据流的包装
控制台的读取是用System.in或是scanner类来读取的
如果你非要用DataInputStream的话,你可以先用scanner来读取一个字符,再把这个字符转成字节流给DataInputStream读取
第2个回答  2011-12-30
DataInputStream dis = new DataInputStream(System.in);

有问题啊,没测试,手写的,那就按 浮生萧条Ice 的来就行了。。。。
怎么读取别人都告诉你了
第3个回答  2011-12-30
DataInputStream din = new DataInputStream(System.in);
不知道这样可以不 呵呵
第4个回答  2011-12-30
public class test {

public static void main(String[] args) {

DataInputStream in =
new DataInputStream(
new BufferedInputStream(System.in));
String s;
try {
while((s = in.readLine()).length() != 0)
System.out.println(s);
// An empty line terminates the program
} catch(IOException e) {
e.printStackTrace();
}
}
}本回答被提问者采纳