IO就是输入输出,输出流可以理解为向目标写入数据,输入流可以理解为从源地址读取。流是一组有序的数据序列。

  输入流 输出流
字节流 InputStream OutputStream
字符流 Reader Writer

输入流

InputStream类是字节输入流的抽象类,是所有字节输入流的父类。该类中所有方法遇到错误时都会引发IOException异常。

  1. read()方法

  2. read(byte[] b)方法

  3. mark(int readlimit)方法

  4. reset()方法

  5. skip(long n)方法

  6. markSupported()方法

  7. close()方法

Reader类是字符输入流的抽象类,所有字符输入流的实现都是它的子类。

输出流

OutputStream类是字节输出流的抽象类,此抽象类是表示输出字节流的所有类的父类。OutputStream类中的所有方法都是返回void,遇到错误时会引发IOException异常。

  1. write(int b)方法

  2. write(byte[] b)方法

  3. write(byte[] b, int off, int len)方法

  4. flush()方法

  5. close()方法

Writer类是字符输出流的抽象类,所有字符输出类的实现都是它的子类。

File类

File类是java.io包中唯一代表磁盘文件本身的对象。

文件的创建与删除:1. File file = new File("d:/word.txt"); 2. File file = new File(String parent, String child); 3. File file = new File(File f, String child);

获取文件信息:

方法 返回值 说明
getName() String 获取文件的名称
canRead() boolean 判断文件是否是可读的
canWrite() boolean 判断文件是否是可被写入
exists() boolean 判断文件是否存在
length() long 获取文件的长度(以字节为单位)
getAbsolutePath() String 获取文件的绝对路径
getParent() String 获取文件的父路径
isFile() boolean 判断文件对象是否是文件
isDirectory() boolean 判断文件对象是否是目录
isHidden() boolean 判断文件对象是否是隐藏文件
lastModified() long 获取文件的最后修改时间

重温IO的更多相关文章

  1. VS2015编译GEOS

    下载链接:http://trac.osgeo.org/geos/ 1. 打开cmake,加载geos源码和定位geos的工程存放位置: 2.点击configure,会报错,首先设置CMAKE_INST ...

  2. inux设备驱动归纳总结(五):2.操作硬件——IO内存【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-80627.html inux设备驱动归纳总结(五):2.操作硬件——IO内存 xxxxxxxxxxxx ...

  3. 【译】深入理解python3.4中Asyncio库与Node.js的异步IO机制

    转载自http://xidui.github.io/2015/10/29/%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3python3-4-Asyncio%E5%BA%93% ...

  4. happy in java之io流简介

    闲来没事,重温马士兵老师的java基础... 流  水流的流  流氓的流,,流 英文叫做stream,溪流 流的分类: 流是用来读写数据的. 流就像水流一样,File类封装的是文件的名字,它是内存里头 ...

  5. JAVA的IO操作:内存操作流

    掌握内存操作流 输入和输出都是从文件中来的,当然,也可将输出的位置设置在内存上,这就需要ByteArrayInputStream和ByteArrayOutputStream ByteArrayInpu ...

  6. 【Linux开发】linux设备驱动归纳总结(五):2.操作硬件——IO内存

    linux设备驱动归纳总结(五):2.操作硬件--IO内存 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

  7. IO流 输入和输出文档内容

    package io; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io. ...

  8. [转] Linux下用文件IO的方式操作GPIO(/sys/class/gpio)

    点击阅读原文 一.概述 通过 sysfs 方式控制 GPIO,先访问 /sys/class/gpio 目录,向 export 文件写入 GPIO 编号,使得该 GPIO 的操作接口从内核空间暴露到用户 ...

  9. 高性能IO模型浅析

    高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking  ...

随机推荐

  1. ipython notebook 安装

    pip install IPython pip install urllib3 pip install jupyter pip install numpy pip install matplotlib ...

  2. jmeter接口测试-线程组设置(断言失败后用例停止执行)

    问题描述: jmeter跑接口用例的时候,其中一条用例的对断言失败后,后面的用例都不执行了! 解决思路1: 考虑应该有地方设置,在菜单栏找了半天没找到,百度也没有查到 解决思路2: jmeter源码导 ...

  3. cgi fast-cig php-fpm

    cgi 通用网关接口,接受到动态请求,web服务器会根据这次请求的内容,然后会fork一个新进程来运行, 这个进程会把处理完的数据返回给web服务器,最后web服务器把内容发送给用户,刚才fork的进 ...

  4. WPF 耗时操作时,加载loging 动画 (BackgroundWorker 使用方法)

    1.定义一个全局 BackgroundWorker private System.ComponentModel.BackgroundWorker bgMeet0; 2.设置执行耗时的任务为True b ...

  5. Oracle根据主键获取对应表,Oracle根据外键获取相关表

    Oracle根据主键获取对应表 select * from user_constraints a, USER_CONS_COLUMNS b where a.CONSTRAINT_TYPE = 'P' ...

  6. Win10启动tomcat控制台乱码解决方案

    1.找到${CATALINA_HOME}/conf/logging.properties 2.添加语句:java.util.logging.ConsoleHandler.encoding = GBK ...

  7. LeetCode 100. Same Tree 判断两棵二叉树是否相等 C++

    Given two binary trees, write a function to check if they are the same or not. Two binary trees are ...

  8. 如何安装MySQL5.5.62

    1.首先进入官网https://www.mysql.com MySQL分为社区版和商业版,社区版是免费的,这里选择社区版的. 2.此时选择一个比较简单的5.5版本 直接下载Wisndow(X86,32 ...

  9. SpringBoot学习笔记1

    1.什么是SpringBoot 用一些固定的方式来构建生产级别的spring应用.spring boot推崇约定大于配置的方式便于你能够快速的启动并运行程序. 2.为什么要学spring boot j ...

  10. Django 请求类型

    // GET请求request.GET // POST请求request.POST // 处理文件上传请求request.FILES // 处理如checkbox等多选 接受列表request.get ...