import java.io.*;
public class IODemo15{
public static void main(String args[]) throws Exception{
InputStream in = null;
in = System.in;
String str = "";
int c = 0;
while((c= in.read()) != -1){
str = str+(char)c;
}
in.close();
System.out.println("输出的内容为:"+str);
}
}
import java.io.*;
public class IODemo15{
public static void main(String args[]) throws Exception{
InputStream in = null;
in = System.in;
String str = "";
//int c = 0;
while(( in.read()) != -1){
str = str+(char)(in.read());
}
in.close();
System.out.println("输出的内容为:"+str);
}
}
第二个输出内容很奇怪.两个程序应该是一样的啊??
D:\java>java IODemo15
dsfsdf
输出的内容为:ssf
public class IODemo15{
public static void main(String args[]) throws Exception{
InputStream in = null;
in = System.in;
String str = "";
int c = 0;
while((c= in.read()) != -1){
str = str+(char)c;
}
in.close();
System.out.println("输出的内容为:"+str);
}
}
import java.io.*;
public class IODemo15{
public static void main(String args[]) throws Exception{
InputStream in = null;
in = System.in;
String str = "";
//int c = 0;
while(( in.read()) != -1){
str = str+(char)(in.read());
}
in.close();
System.out.println("输出的内容为:"+str);
}
}
第二个输出内容很奇怪.两个程序应该是一样的啊??
D:\java>java IODemo15
dsfsdf
输出的内容为:ssf
str = str+(char)(in.read()); 你read()了两遍,所以输出的内容都是空缺的!
System.out.println("输出的内容为:"+str);
打印的都是String str = "";
第一次read,返回一个d,但你没有接受 “while(( in.read()) != -1){”
第二次read,返回一个s,你接受了 str="s"; ” str = str+(char)(in.read()); “
第三次read,返回一个f,但你没有接受 “while(( in.read()) != -1){”
第四次read,返回一个s,你接受了 str="ss"; ” str = str+(char)(in.read()); “
第五次read,返回一个d,但你没有接受 “while(( in.read()) != -1){”
第六次read,返回一个f,你接受了 str="ssf"; ” str = str+(char)(in.read()); “
所以你的结果是ssf
str = str+(char)(in.read()); “ 只接受24681012.....
造成的对么呵呵谢谢你啊.不过做人得公平你和第一个一人十分吧.好人一生平安啊 呵呵..
http://topic.csdn.net/u/20080509/13/e76fd479-e057-4568-891a-398222a9dc0a.html?seed=379829663
把这个回答了我给你分啊