黑马程序员技术交流社区
标题:
io流读取文件
[打印本页]
作者:
朱吕龙
时间:
2015-6-6 21:35
标题:
io流读取文件
package itcast.cn;
/*需求:读取f盘下的code文件夹里的FileDemo.java文件
* 方法一:FileReader fr=new FileReader("f://code//FileDemo.java");
int ch=0;
while((ch=fr.read())!=-1){
System.out.print((char)ch);
这里用方法二:采用一次读取4个字节。
*/
import java.io.FileReader;
import java.io.IOException;
public class FileReaderDemo2 {
public static void main(String[] args) throws IOException {
// 创建字符输入流
FileReader fe=new FileReader("f://code//FileDemo.java");
// 读取数据
char[] chs=new char[4];
int len=0;
while((len=fe.read(chs))!=-1){
System.out.print(new String(chs,0,len));
}
fe.close();
}
}
下面是我的问题:在输出的时候为什么不是输出 String(chs,0,len);我们看到new都是在创建对象的时候用,而这里前面要加个new呢?
望大神和老师看到帮忙解决。
作者:
银哥
时间:
2015-6-6 23:12
System.out.print(new String(chs,0,len));
相当于 String s=new String(chs,0,len);
System.out.print(s);
所以要带new
作者:
q757571446
时间:
2015-6-6 23:33
这么高深,我竟无言以对。顺便说下,能送个分给我吗
作者:
langxiao505
时间:
2015-6-6 23:41
这块有点难,
作者:
少年闰土
时间:
2015-6-7 00:34
String()函数是一个构造函数,而构造函数在什么使用呢?在创建对象的时候用吧!那怎么创建对象呢?new 构造函数()这种形式吧,所以new String(chs,0,len)就是创建了一个对象,这里特殊的时候这个没有把这个对象显式的赋值给引用,不过它还是传给了System.out.println函数作实参了,不知道有没有说清楚呢?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2