java中IO流主要用于硬板、内存、键盘等处理设备上得数据 *** 作,根据处理数据的数据类型的不同可以分为:
字节流(抽象基类为InPutStream和OutPutStream)列如:jpg,MP3,MP4等等文件
字符流(抽象基类为Reader和Writer)列如:word文档,excal文档等等。
通过file关键字对文件,文件夹 *** 作,file类可以跨平台进行 *** 作,因为java是跨平台的开发环境。
主要的方法如下图:
java.io包下常用的16个流文件流:
- java.io.FileInputStream
- java.io.FileOutputStream
- java.io.FileReader
- java.io.FileWriter
转换流:(将字节流转换成字符流) - java.io.InputStreamReader
- java.io.OuputStreamWriter
缓冲流:(减少磁盘 *** 作,增加磁盘寿命) - java.io.BufferedReader
- java.io.BufferedWriter
- java.io.BufferedInputStream
- java.io.BufferedOnputStream
数据流: - java.io.DataInputStream
- java.io.DataOnputStream
对象流: - java.io.ObjectInputStream
- java.io.ObjectOnputStream
标准输出流: - java.io.PrintWriter
- java.io.PrintStream
实战
废话不多说代码上
创建一个类,运行后在控制台输入y可以创建一个A.txt文档到D盘 (输入其他字符无效,并重新输入),然后当你每次在控制台输入的字符串按下回车键后都会输出到A.txt文档中并且换行(如果输入end则结束输出否则继续执行输出)
import java.io.*; import java.util.Scanner; public class Test3 { public static void main(String[] args) { BufferedReader br = null; BufferedWriter bw = null; Scanner input = new Scanner(System.in); //创一个无限循环,用于循环输入直到输入为y,break跳出终止循环 for (; ; ) { System.out.println("请输入y创建txt文档"); String yy = input.next(); //做判断,当输入y时进入if,否则继续循环 if (yy.equals("y")) { //在指定位置创一个A.txt File f1 = new File("d:\A.txt"); break; } else { System.out.println("创建失败"); continue; } } System.out.println("请输入要录入的内容"); br = new BufferedReader(new InputStreamReader(System.in)); try { bw = new BufferedWriter(new FileWriter(new File("d:\A.txt"))); String show=""; while ((show = br.readLine()) != null) { //写入一行内容 if (show.equals("end")) { System.out.println("结束输入"); break; } bw.write(show); bw.newline(); } } catch (IOException e) { e.printStackTrace(); } finally { try { br.close(); bw.close(); } catch (IOException e) { e.printStackTrace(); } } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)