import java.io.*;
public class FileTest {
public static void main(String[] args) {
File file = new File("word.txt");
try {
FileOutputStream out = new FileOutputStream(file);
byte byt[] = "我有一只小毛驴,我从来也不骑".getBytes();
out.write(byt);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
FileInputStream in = new FileInputStream(file);
byte byt[] = new byte[1024];
int len = in.read(byt);
System.out.println("文件中的信息是:" +new String(byt));
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
问题1:为什么会有如下报错(加粗部分代码 添加抛出声明后就可以正常运行)而答案中的代码复制进Eclipse不报错?
Exception in thread "main" java.lang.Error: 无法解析的编译问题:
未处理的异常类型 IOException
未处理的异常类型 IOException
at FileTest.main(FileTest.java:17)
问题2:其中(加粗部分)代码
System.out.println("文件中的信息是:" +new String(byt));
和答案中的
System.out.println("文件中的信息是:" + new String(byt, 0, len));
都可以正常运行 为什么答案中要写成new String(byt, 0, len)。