InputStream和OutputStream是抽象类,是所有字节输入流和输出流的父类。
这里,我们首先要分清楚两个概念:
InputStream(输入流):输入流是用来读入数据的。读入
OutputStream(输出流):输出流是用来写出数据的。写出
public class FileUtil {
public static void testFileOutPutStream() throws FileNotFoundException {
FileOutputStream fileOutputStream = new FileOutputStream("jak.txt");
}
public static void createTempFile() throws Exception {
File tempFile = File.createTempFile("test", ".txt");
System.out.println("文件路径: " + tempFile.getAbsolutePath());
tempFile.deleteonExit();
FileOutputStream fileOutputStream = new FileOutputStream(tempFile);
fileOutputStream.write("aaa".getBytes());
}
public static void main(String[] args) throws Exception {
createTempFile();
}
}
2、使用FileInputStream和FileOutputStream实现文件的复制
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class SummaryFISAndFOS {
public static void main(String[] args){
try {
long begin=System.currentTimeMillis();
//从输入流中读取数据
FileInputStream fis=new FileInputStream("FOSDemo.txt");
//向输出流中写入数据
FileOutputStream fos=new FileOutputStream("FISAndFOSDest.txt");
//先定义一个字节缓冲区,减少I/O次数,提高读写效率
byte[] buffer=new byte[10240];
int size=0;
while((size=fis.read(buffer))!=-1){
fos.write(buffer, 0, size);
}
fis.close();
fos.close();
long end=System.currentTimeMillis();
System.out.println("使用文件输入流和文件输出流实现文件的复制完毕!耗时:"+(end-begin)+"毫秒");
} catch (Exception e) {
e.printStackTrace();
}
//解决JNI问题(Java Native Interface)
System.exit(0);
}
}
参考博客



