FileInputStream
代码
import
java.io.
*
;
public class StreamTest {
public static void main(String[] args) throws IOException {
String path = System.getProperty( " user.dir " ) + File.separator + " temp.txt " ;
File file = new File(path);
InputStream is = new FileInputStream(file);
byte [] buf = new byte [ 1024 ];
int len = is.read(buf); // 将读到的字节放在字节数组中
int off = 0 ; // 从什么地方开始读取
String str = new String(buf, off, len);
System.out.println(str);
is.close();
}
}
public class StreamTest {
public static void main(String[] args) throws IOException {
String path = System.getProperty( " user.dir " ) + File.separator + " temp.txt " ;
File file = new File(path);
InputStream is = new FileInputStream(file);
byte [] buf = new byte [ 1024 ];
int len = is.read(buf); // 将读到的字节放在字节数组中
int off = 0 ; // 从什么地方开始读取
String str = new String(buf, off, len);
System.out.println(str);
is.close();
}
}
在定义数组byte[] buf = new byte[100]的时候,此时它还没有与文件建立任何关系,然而在fis.read(buf)的时候,它们就联系起来了,相当于fis找到了一个容器,如果buf.length不是0,那么文件的内容放在这个(容器)byte数组中,所以在放入数据之前就应该设定该数组的大小,也并不一定文件的全部内容都能保存到该byte数组中,该数组也最大只能保存b.length个字节。