在IO流的学习之中,还是感觉到难度的!尤其是刚开始的输入输出流从字面的意思和实际的用法就很混乱,有点搞不清!在查阅资料和反复的练习之后总结了一下,把意思彻底的理顺了一下,现在可以算是很好的理解!
以下就是代码即解释:
import java.io.*;
public class InputStreamDemo01{
public static void main(String args[]) throws Exception{
/*
InputStreamc从字面上理解是输入的意思,想到的应该是向什么输入东西,
其实不是这样的,而是把文件中的数据读取出来
首先输出输出时相对于JVM而言
InputStream-->输入流:从文件中输出内容到JVM中,即向JVM中输入内容
文件-->JVM:文件中输出,JVM中输入
而InputStream中的方法read():从文件向JVM中读取了内容(意思的确很别扭)
最终结果可想而知是向JVM中输入数据
(不要被字面的意思迷惑了,要能够清楚的认识到程序的执行)
*/
//第一步:使用Fiel类找到一个文件
File f=new File("f:"+File.separator+"test.txt"); //声明Fiel对象。如果不存在,则自动创建
//第二步:通过子类实例化父类
InputStream in=new FileInputStream(f); //准备好输出对象:out
//第三步:进行读写操作
byte b[]=new byte[1024];
in.read(b); //把文件中的数据读入到JVM中
//第四步:关闭输出流
in.close();
System.out.println("内容是:"+new String(b));
}
}
import java.io.*;
public class OutputStreamDemo01{
public static void main(String args[]) throws Exception{
/*OutputStreamc从字面上理解是输出的意思,想到的应该是向什么输出东西,
其实不是这样的,而是向文件中写入数据
首先输出输出时相对于JVM而言
OutputStream-->输出流:从JVM内存写数据到文件中,或者其他地方,相对于JVM就是输出
JVM-->文件:JVM输出了内容,文件中写入了内容
而OutputStream中的方法write():从JVM中输出的内容写入到文件中
最终结果可想而知是向文件中写入数据,及从JVM中输出,向某一文件输出数据
(不要被字面的意思迷惑了,要能够清楚的认识到程序的执行)
*/
//第一步:使用Fiel类找到一个文件
File f=new File("f:"+File.separator+"test.txt"); //声明Fiel对象。如果不存在,则自动创建
//第二步:通过子类实例化父类
OutputStream out=new FileOutputStream(f); //准备好输出对象:out,这种实例化方式会覆盖原来的所有内容
//第三步:进行读写操作
String str="Hello World"; //准备一个字符串
byte b[]=str.getBytes(); //将字符串转换为字节byte数组
out.write(b); //将内容输出,写入到文件
//第四步:关闭输出流
out.close();
}
}