#千锋逆战班# 第30天 IO流 (一) #笔记总结#

14 篇文章 0 订阅
1 篇文章 0 订阅

1、File(文件)

  • 常用API

    1) 该文件存放的绝对路径    String getAbsolutePath()2) 该文件的文件名         String getName()3) 该文件是否可写         boolean canWrite()4) 该文件是否可读;        boolean canRead()5) 该文件是否为隐藏文件    boolean isHidden()6) 该文件的长度           long length()7) 该文件的最后修改时间	   long lastModified()8) 获取父级的目录		   File getParentFile()9) 判断是否存在		   boolean exists()10)只能创建一级目录		   boolean mkdir()11)能够创建多级目录        boolean mkdirs()12)创建一个新文件			boolean createNewFile()13)判断是否是目录			isDirectory() 
    
  • 绝对路径和相对路径(parent)

    • 绝对路径: 绝对路径就是你的主页上的文件或目录在硬盘上真正的路径
    • 相对路径: 相对与某个基准目录的路径

2、IO流的分类

  • 功能区分: 输入流(读InputStream / Reader)/输出流(写OutputStream / Writer)
  • 单位区分: 字节流(InputStream / OutputStream)/字符流(Reader / Writer)

3、FileInputStream(文件输入流)

  • 常用API
  • void close()
    //关闭此文件输入流并释放与此流有关的所有系统资源。
  • int read()
    //从此输入流中读取一个数据字节。
  • int read(byte[] b)
    //从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。
  • int read(byte[] b, int off, int len)
    //从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。
public void test() throws IOException{
	//硬盘中的文件file
	File file = new File("E:\\Test.txt");
	
	//创建file文件的文件输入流
	InputStream is = new FileInputStream(file);

	int length = 0;//一次读取的字节长度
	byte[] bytes = new byte[1024];	//存储读取到的字节
	while( ( length = is.read(bytes) ) != -1){	//读取文件
	
		//将读取到的字节转换成字符打印
		System.out.println(new String(bytes,0,length));	
		
	}
	os.close();	//关闭输入流
}

4、FileOutputStream(文件输出流)

  • 常用API
  • void close()
    //关闭此文件输出流并释放与此流有关的所有系统资源。
  • void write(byte[] b)
    //将 b.length 个字节从指定 byte 数组写入此文件输出流中。
  • void write(byte[] b, int off, int len)
    //将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
  • void write(int b)
    //将指定字节写入此文件输出流。
public void test() throws IOException{
	//需要创建的文件file
	File file = new File("D:\\Test.txt");	
	
	//创建file文件的文件输出流
	OutputStream os = new FileOutputStream(file);
	
	//定义需要写入的文字
	String str = "需要写入的文字";
	
	//将需要写入的字符转成字节数组
	byte[] bytes = str.getBytes();

	os.write(bytes);	//写入字节数组	
	os.close();	//关闭输出流
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值