1:file:文件的创建和删除;

File file=new File("D:\\word.txt");绝对路径
File file=new File("word.txt");相对路径
if(!file.exists()) { file.createNewFile();} 不存在时,创建新的
if(file.exists()) { file.delete();} 存在时,删除操作
file.length();汉字两个字节一个,字母空格数字一个字节一个,换行两个字节。(long)
file.isFile()判断是否存在
file.canRead()判断是否可以读
file.canWrite();判断是否被写入
file.getAbsolutePath()获取绝对路径
file.lastModified()最后的修改时间(long)

2:文件输入输出流
文件txt的写入当执行流的时候文件内容会被清空,读取不会清空文件内容
FileInputStream和FileOutputStream类(读取,写入)

 File file=new File("D:\\word.txt");FileOutputStream out=new FileOutputStream (file);//写入byte bite[]="abcdefg牛123*?!#".getBytes();out.write(bite);//在文件中写入相应信息out.close();FileInputStream in=new FileInputStream (file);//读取byte bite2[]=new byte[1024];int len=in.read(bite2);//从文件中读取信息。返回字节数,符号数字字母一个字节,汉字两个字节System.out.println(new String(bite2,1,len-2));//字节数组,初始结尾    输出bcdefg牛123*?System.out.println(len);//输出16in.close();//关闭流

FileReader和FileWriter类(读取,写入)

File file=new File("D:\\word.txt");FileWriter out=new FileWriter(file);//写入String a="hellow张三\n";out.write(a);out.write(a);out.close();//关闭流FileReader in=new FileReader(file);//读取char ch[]=new char[1024];in.read(ch);     System.out.println(ch);//hellow张三//hellow张三 当输出ch[7]=三,ch[8]="";ch[9]=h;换行中间有一个空in.close();//关闭流

两类的区别在于FileInputStream和FileOutputStream类(读取,写入)处理字节流,很适合处理音频等文件不适合处理汉字文档,因为汉字和英文字母不同两个字节,而FileReader和FileWriter类(读取,写入)适合处理字符文本内容,不会乱码。
3:带缓存的输入,输出流

BufferedInputStream和BufferedOutputStream
BufferedInputStream(InputStream in)//32个字节缓存流
BufferedInputStream(InputStream in,int size)//size个字节缓存流
BufferedOutputStream(OutputStream out)
BufferedOutputStream(OutputStream out,int size);

BufferedWriter和BufferedReader

 String a[]= {"张三你好","李四你好","李四你好"};File file=new File("D:\\word.txt");FileWriter out=new FileWriter(file);//写入BufferedWriter bufw=new BufferedWriter (out);for(int i=0;i<3;i ){bufw.write(a[i]);//写入bufw.newLine();//换行,写入一个行分隔符}bufw.close();out.close();//关闭流FileReader in=new FileReader(file);//读取BufferedReader bufr=new BufferedReader(in);String s=null;    while((s= bufr.readLine())!=null){System.out.println(s);}//一定要赋值,readLine()是一种动态方法返回字符串。不可 while(bufr.readLine()=null)System.out.println(bufr.readLine());}//这样就默认调用了两次函数。。。bufr.close();in.close();//关闭流/** 输出:* 张三你好* 李四你好* 李四你好*/

4:数据输入,输出流
DateInputStream和DateOutputStream
DateInputStream(InputStream in)使用指定基础的InputStream创建
DateOutputStream(OutputStream out)
DateOutputStream三种写入字符串方法
writeBytes(String s) java 字符是双字节的,将字符的低字节内容录入。
writeChars(String s) 每个字符的两个字节内容
writeUTF(String s) 将字符按照utf编码录入
DateInputStream读取字符串
readUTF();

如果对后端、爬虫等感性趣欢迎关注我的个人公众号交流:bigsai

Java IO知识点相关推荐

  1. Java IO 知识点总结和盘点,看完后直呼很哇塞

    "老王,Java IO 也太上头了吧?"新兵蛋子小二向头顶很凉快的老王抱怨道,"你瞧,我就按照传输方式对 IO 进行了一个简单的分类,就能搞出来这么多的玩意!" ...

  2. Java面试知识点:File、IO流

    问题:Java面试知识点:File.IO流 答案: 1.File listFiles方法注意事项: • 当调用者不存在时,返回null • 当调用者是一个文件时,返回null • 当调用者是一个空文件 ...

  3. Java的知识点28——文件编码、IO流的实例

    文件编码  字符 -->字节  (编码 encode)           字节 --> 字符(解码 decode) 节点流  处理流 package cn.dym;import java ...

  4. Java的知识点25——IO、 数据源

    IO  1.I/O介绍 2.file 3.字节流 4.字符流 5.Commons IO 注:流:流动.流向,从一端移动到另一端(程序.数据源头)(一切以程序为中心).流是一个抽象.动态的概念,是一连串 ...

  5. JAVA核心知识点--IO流

    目录 一.JavaIO流的分类 输入流和输出流 字节流和字符流 节点流和处理流 二.InputStream,OutputStream,Reader和Writer 三.节点流 四.处理流 缓冲流 转换流 ...

  6. java IO操作知识点

    IO流的概念: IO流,将不同的输入输出,以相同的方式操作read(),write();创建不同类型的流,有不同的实现方式,不同类型的流,又有各自特有的操作方式. 无论内部如何工作,所有IO流呈现的都 ...

  7. [零基础学JAVA]Java SE应用部分-27.Java IO操作(01)

    JAVA IO操作目标 本季知识点 1.File类 2.RandomAccessFile类 File类 在JAVA中所有的IO操作全部存放在java.io包中. File是唯一一个与文件本身有关的操作 ...

  8. java基础知识点_「Java面试题/知识点精华集」20000+字的Java基础知识篇(2020最新版) !

    " 本文已经收录进我的 79K Star 的 Java 开源项目 JavaGuide:https://github.com/Snailclimb/JavaGuide (「Java学习+面试指 ...

  9. 1.6 万字长文带你读懂 Java IO

    Java IO 是一个庞大的知识体系,很多人学着学着就会学懵了,包括我在内也是如此,所以本文将会从 Java 的 BIO 开始,一步一步深入学习,引出 JDK1.4 之后出现的 NIO 技术,对比 N ...

最新文章

  1. JavaScript编码规范[百度]
  2. 【opencv】21.图像处理为什么要归一化
  3. 超4000人参加源码共读,喊你来一起学习成长~打开新世界
  4. .NET Core开发实战(第18课:日志框架:聊聊记日志的最佳姿势)--学习笔记(上)...
  5. Pipelines - .NET中的新IO API指引(二)
  6. SQLite与Sql Server的语法差异(转载)
  7. 神奇的go语言(开始篇)
  8. i7台式电脑配置推荐_2020年台式电脑配置推荐
  9. 拉格朗日中值定理ξ怎么求_微分学核心定理——中值定理
  10. Git和SourcesTree的安装
  11. 如何更改通达OA附件的存储目录
  12. NetSuite 精益实施的ALV实践
  13. 纯前端 HTML+JS版, Vue.js版 二维码:生成、扫描、识别、解析、扫一扫
  14. 从程序员到项目经理转自西门吹雪
  15. UiPath如何下载
  16. 【博学谷学习记录】超强总结,用心分享 | 产品经理之B端相关概念及业务流程设计
  17. 鸿蒙系统剽窃,外媒再爆猛料!质疑华为鸿蒙系统抄袭:被指山寨谷歌安卓11系统...
  18. 世界顶级思维(必须收藏)
  19. 《Real-Time Rendering 4th Edition》全文翻译 - 第4章 变换(下)4.5 ~ 4.7
  20. ArcGIS小知识(九)——坡度、剖面曲率、坡向、等高线

热门文章

  1. Hyperledger Besu(2)隐私
  2. Html 教程(2)语法和属性
  3. 《研磨设计模式》chap10 中介者模式Mediator(1)简介
  4. 近世代数--外直积--外直积是什么?关于阶的性质?
  5. 【文字识别小程序】快速识别文字,一款用了就再也离不开的宝藏神器~(出道即巅峰永久免费)
  6. 【django】数据库操作-增 删 改
  7. ARP协议SMTP协议MIME
  8. android 判断时间是否过期_眉笔眉粉有保质期吗?怎么判断眉笔眉粉是否过期?...
  9. 简单免杀绕过和利用上线的 GoCS
  10. 160个Crackme011