IO流和文件处理

IO流

输出流(out)(往文件写数据)和输入流(in)(从文件中读数据)

字节流
OutputStream(InputStream)祖辈 <字节输出输入流>
– FileOutputStream (FileInputStream) 父辈 <文件输出输入流> (1,把普通输入字节流包装成高效字节流,适合传视频图片的文件)
– BufferedOutputStream (BufferedInputStream ) 子辈 (和父辈无系)<高效字节缓冲输出输入流>(2,在fosfIs中间转为高效
– PrintStream 子辈 (和父辈没关系)<字节打印流>

​ – ObjectOutputStream(ObjectInputStream) 父辈 <对象序反序列化(列化)流 >

字符流
Writer 祖辈 (Reader)<字符输出输入流>1
– OutputStreamWriter (InputStreamReader) 父辈 <字节转字符输出输入流> (2.先要有OutputStream,再转字符流)
– FileWriter (FileReader ) 子辈(和父辈有关系,从父辈继承来的)<字符输出输入流> (1创建对象直接用)
– BufferedWriter (BufferedReader) 父辈 <高效字符缓冲输出流 > (2普通输入字符流包装为高效字符输入流)
– PrintWriter 父辈 <字打印流>

字节流
字节输出输入流OutputStream(InputStream)inputStream is = System.in
普通文件字节输出输入流FileOutputStream (FileInputStream)OutputStream outputStream = new FileOutputStream(“output.txt”);
高效字节输出输入流BufferedOutputStream (BufferedInputStream )子(和父辈2无系)创建FileInputStream
FileInputStream fis = newbFileInputStream(“aa.txt”);
把普通流包装成高效流
BufferedInputStream bis = new
BufferedInputStream(fis);
对象序反序列化ObjectOutputStream(ObjectInputStream)父辈FileOutputStream fos = new FileOutputStream(“1.txt”);
ObjectOutputStream oos = new ObjectOutputStream(fos);
字节打印流PrintStream子辈 (和父辈没关系)FileOutputStream fos = new FileOutputStream(“output.txt”); PrintStream ps = new PrintStream(fos);
字符流
字符输出输入流Writer
字节转字符输出输入流OutputStreamWriter (InputStreamReader)创建字节输出流
FileOutputStream fos = new
FileOutputStream(“dd.txt”);
创建字节流转字符输出流对象 要从字节流转化OutputStreamWriter osw = new
OutputStreamWriter(fos);inputStream也可以
普通字符输出输入流FileWriter(FileReader)子,从父辈继承来的OutputStreamWriterWriter w = new
FileWriter(“data.properties”);
高效字符输出输入流BufferedWriter (BufferedReader)创建字符输出流对象
FileWriter fw = new FileWriter(“cc.txt”);
通过字符输出流对象包装成为高效字符缓冲输出流
BufferedWriter bw = new BufferedWriter(fw);
字符打印流PrintStreamPrintWriter pw = new PrintWriter(“ff.txt”);
write();//写入
flush();//刷新,高效流必刷新
newLine();//换行(Bufferedwrite高效字符特有)
readLine();//读一行(BufferedReader高效字符特有)
a.getBytes();//字符串转字节数组
a.println();打印流

字符字节可以指定编码,打印流只有输出,写出

transient关键字

文件夹

创建File类对象 File 对象名 = new File(“文件路径”)

getAbsolutePath():获取绝对路径
getPath():获取路径(用什么方式创建的就获取什么路径)
getParent():获取所在文件夹路径
getName():获取文件/文件夹名称
exists():文件或文件夹是否存在,有就true
createNewFile():创建文件
mkdir():创建文件夹
mkdirs():创建多级目录 ,执行成功true
delete() 删除文件夹不能为非空(有东西),否则删除失败

File 对象名 = new File(“文件路径”)

建一个文件:boolean flag = f.mkdir();

boolean isFile():判断文件对象是否是文件
booleam isDirectory():判断文件对象是否是文件夹
File[] listFiles():获取文件夹下所有的file对象(包括文件或文件夹)
返回的是File类数组
String[] list():获取文件夹下所有的文件或文件夹 返回的是字符
串数组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值