`

java 流基础内容

    博客分类:
  • j2se
阅读更多
输入、输出流的分类: (都是针对程序来说的)
1:  输入流 inputstream(字节流)  reader(字符流)
2:  输出流 outputstream (字节流)  writer(字符流)
继承自Inputstream的流都是用于向程序中输入数据,且数据的单位为字节(8 bit);
继承自Inputstream的流都是用于从程序中输出数据,且数据的单位为字节(8 bit);
继承自Reader的流都是用于向程序中输入数据,且数据的单位为字节(16 bit);
继承自Writer的流都是用于从程序中输出数据,且数据的单位为字节(16 bit);

public static void main(String[] args) throws IOException {
File f = new File("D:\\ljm1\\ljm2");  
//目录可以创建多层,比如ljm1不存在,ljm2也不存在,在创建ljm2时按照这种写法,可以连同ljm1一块创建
f.mkdirs();        
//文件可以直接创建 f = new File("D:\\ljm.docx"); 但是如果想放在某个文件夹下的话,该文件夹必须存在
f = new File("D:\\ljm1\\ljm2\\ljm.docx");     
f.createNewFile();

//读取文件内容从一个地方到另外的地方
File f1 = new File("D:\\ljm.docx"); //在内存中生成名字为"D:\\ljm.docx" 的对象 
f1.createNewFile(); //在硬盘上真真正正的创建该文件

int b = 0;
FileInputStream in = new FileInputStream(f1);
BufferedInputStream bufferedIn = new BufferedInputStream(in); //处理流

// D:\\ljm1\\ljm2\\ljm.docx 如果这个路径不存在,fileOutputStream 会自动创建
FileOutputStream out = new FileOutputStream("D:\\ljm1\\ljm2\\ljm.docx");
BufferedOutputStream bufferedOut = new BufferedOutputStream(out);

while((b = bufferedIn.read()) != -1){
bufferedOut.write(b);
}
bufferedOut.flush(); //将需要读取的内容立刻读取
bufferedIn.close();  //关闭流,必须先关闭输入流
bufferedOut.close();
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics