IO:使用FileInputStream的简单示例:
此程序示范了如何使用FileInputStream来读取文件自身
package net.nyist.io;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class FileInputStreamTest {
public static void main(String[] args) throws IOException{
//创建字节输入流,路径可以是绝对路径,也可以是相对路径(相对于项目工程为根目录)
//FileInputStream fis = new FileInputStream("D:\\java\\oracletraining\\jbossworkspace\\JavaSE\\IO\\src\\net\\nyist\\io\\FileInputStreamTest.java");
FileInputStream fis = new FileInputStream("src\\net\\nyist\\io\\FileInputStreamTest.java");
/*
File file = new File("src\\net\\nyist\\io\\FileInputStreamTest.java");
System.out.println(file.getAbsolutePath());
FileInputStream fis = new FileInputStream(file);
*/
//创建一个长度为1024的内存空间,1024足够大,可以一次将文件读取完,不会出现中文注释乱码问题
byte[] bbuf = new byte[1024];
//用于保存实际读取的字节数
int hasRead = 0;
//使用循环来重复读取数据
while( (hasRead = fis.read(bbuf)) > 0){
//将字节数组转换为字符串输出
System.out.print(new String(bbuf,0,hasRead));
}
//关闭文件输出流,放在finally块里更安全
fis.close();
}
}
输出结果:
package net.nyist.io;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class FileInputStreamTest {
public static void main(String[] args) throws IOException{
//创建字节输入流,路径可以是绝对路径,也可以是相对路径(相对于项目工程为根目录)
//FileInputStream fis = new FileInputStream("D:\\java\\oracletraining\\jbossworkspace\\JavaSE\\IO\\src\\net\\nyist\\io\\FileInputStreamTest.java");
FileInputStream fis = new FileInputStream("src\\net\\nyist\\io\\FileInputStreamTest.java");
/*
File file = new File("src\\net\\nyist\\io\\FileInputStreamTest.java");
System.out.println(file.getAbsolutePath());
FileInputStream fis = new FileInputStream(file);
*/
//创建一个长度为1024的内存空间
byte[] bbuf = new byte[1024];
//用于保存实际读取的字节数
int hasRead = 0;
//使用循环来重复读取数据
while( (hasRead = fis.read(bbuf)) > 0){
//将字节数组转换为字符串输出
System.out.print(new String(bbuf,0,hasRead));
}
//关闭文件输出流,放在finally块里更安全
fis.close();
}
}