JAVA I/O

  • 一.关键步骤
  • 二.操作文件或目录属性
  • 三.使用字节流类FileInputStream读文本文件
  • 四.使用字节流类FileOutputStream写文本文件

一.关键步骤

1.使用File类操作文件或目录属性
2.使用FileInputStream类读文本文件
3.使用FileOutputStream类写文本文件
4.使用BufferedReader类和FileReader类读文本文件
5.使用BufferedWriter和FileWriter类写文本文件
6.使用DataInputStream类读二进制文件
7.使用DataOutStream类写二进制文件
8.重定向标准I/O

二.操作文件或目录属性

方法 说明
boolean exists() 测试文件是否存在
String getAbsolute Path() 返回此对象表示的文件的绝对路径名
String getName() 返回此对象表示的文件的名称
Strng getParent() 返回此File对象的路径名的上一级,如果路径没有上一级,则返回null
boolan delete() 删除此对象指定的文件
boolean createNewFile() 创建空文件,不创建文件夹
boolean isDirectory() 测试此File对象表示的是否是目录
boolean mkdir() 创建一个目录,它的路径名由当前File对象指定
boolean mkdirs() 创建包括父目录的目录
public class Test {public static void main(String[] args) {File f = new File("IOhaha.txt");System.out.println("文件名称" + f.getName());System.out.println("相对路径" + f.getPath());System.out.println("绝对路径" + f.getAbsolutePath());System.out.println("文件长度" + f.length());f.getParentFile().mkdirs();createFile("E:/IOhaha.txt");System.out.println(f.exists());}}

三.使用字节流类FileInputStream读文本文件

1 FileInputStream对象和Stirng 对象声明
2.创建FileInputStream对象(文件路径或File对象)
3.读单字节或整个读到byte数组
4.转成字符串
5.关闭FileInputStream流
6.返回结果字符串

public static String readFile(String path){//包含中文的读取方法
FileInputStream fis=null;
String str=null;
try {fis=new FileInputStream(path);
byte[] b=new byte[fis.available()];
fis.read(b);
str=new String(b);
} catch (FileNotFoundException e) {e.printStackTrace();
} catch (IOException e) {e.printStackTrace();
} finally {try {fis.close();
} catch (IOException e) {e.printStackTrace();
}
}return str;
}

四.使用字节流类FileOutputStream写文本文件

1.File对象装载文件路径
2.判断文件父级目录是否存在,不存在则创建
3.声明FileOutputStream对象
4.创建FileOutputStream对象(File对象,是否追加)
5.把要写的字符串写成byte数组,并写入输出流
6.关闭FileOutputStream流

public static void writeFile(String str,String path,boolean isAppend){File f=new File(path);
if(!f.getParentFile().exists()){f.getParentFile().mkdirs();
}
FileOutputStream fos=null;
try {fos=new FileOutputStream(f,isAppend);
byte[] b=str.getBytes();
fos.write(b);
} catch (FileNotFoundException e) {e.printStackTrace();
} catch (IOException e) {e.printStackTrace();
} finally {try {fos.close();
} catch (IOException e) {e.printStackTrace();
}
}
}

<Zhuuu_ZZ>JAVA I/O相关推荐

  1. hive 转拼音udf_<Zhuuu_ZZ>HIVE(十二)UDF自定义函数

    <Zhuuu_ZZ>HIVE(十二)UDF自定义函数 <Zhuuu_ZZ>HIVE(十二)UDF自定义函数 Hive UDF开发流程 一 创建Maven工程 二 导入依赖Jar ...

  2. <Zhuuu_ZZ>大数据技术之Flume详解

    大数据技术之Flume详解 一 Flume配置 Flume安装地址 环境配置 验证 二 Flume基础架构 1.定义 2.Flume组成架构 3.Flume组件 Agent Source Channe ...

  3. <Zhuuu_ZZ>设计模式—面向接口编程

    设计模式 一 案例:将Kafka数据上传至Hbase 二 分析:当有多个topic需要上传数据至Hbase时 三 设计模式:提高代码的重用性 3.1.编写接口IWriter写入Hbase,Hive等 ...

  4. <Zhuuu_ZZ>Spark Streaming

    Spark Streaming 一 Spark Streaming概述 1.离线和实时概念 2.批量和流式概念 3.Spark Streaming是什么 4.Spark Streaming特点 5.S ...

  5. <Zhuuu_ZZ>HIVE(终)总结大全:是兄弟就来三连我

    HIVE总结大全 一 Hive入门 1 什么是Hive 2 Hive的优缺点 2.1 优点 2.2 缺点 3 Hive架构原理 4 Hive和数据库比较 4.1 查询语言 4.2 数据存储位置 4.3 ...

  6. <十>java常用类(2)

    Java常用类-String类(二) String的常用方法1 一.方法概述 int length():返回字符串的长度 char charAt(int index):返回某索引处的字符 boolea ...

  7. <Zhuuu_ZZ>Map接口和equals重写

    Map接口与equals的重写 一.Map接口 二.重写equals与Map应用 一.Map接口 Map接口存储一组成对的键(key)--值(value)对象,提供key到value的映射,通过key ...

  8. <Zhuuu_ZZ>HIVE(九)窗口函数

    Hive窗口函数 总览 一 数据准备 二 over开窗 二 partition by子句 三 order by 子句 四 window 子句 五 序列函数 ntile 六 lag和lead函数 七 f ...

  9. java.lang.NoSuchMethodException: com.cbb.qqzone.pojo.Topic.<init>(java.lang.Integer)

    Topic类中没有一个带Integer参数的构造方法 下面是另一个reply没有带Integer参数(唯一)的构造方法的例子 在数据库的t_host_reply表中reply列时int类型 ,而hos ...

最新文章

  1. laravle 事务
  2. C语言 | 结构体详解(C结构体)
  3. 消息发送样例介绍和步骤分析
  4. Linux报错:Syntax error: ( unexpected解决办法(转)
  5. JavaScript入门(part6)--运算符
  6. linux中lvm的缩减
  7. ok计数器使用教程_玩转透视表!Excel教程 Excel入门 Excel技巧 Excel快捷键 Excel学习!...
  8. php反序列化总结与学习
  9. JQuery的click、bind、delegate、off、unbind
  10. editplus编辑c语言,使用EditPlus编程软件学习C/C++编程
  11. java输入输出26:IO流(对象操作流ObjecOutputStream)
  12. 求教lotka-volterra模型在matlab中的仿真模拟
  13. 外媒点赞,浪潮存储为何能入围全球最佳主存储供应商
  14. 村长选举c语言程序,大村长-第一章 选举-爱阅小说网
  15. 香橙派PC 2(H5)配置备忘录
  16. 微信公众号开发之jfinal wxin
  17. html前端使用高德地图入门教程,并在地图上标记位置
  18. 原码、反码、补码、移码存在的意义
  19. 【BZOJ2069】ZAW(POI2004)-最短路+二进制分组
  20. 阅读开源Python脚本学习笔记1,之python异常

热门文章

  1. win2012文件服务器配额,Windows Server 2012教程:创建配额模板
  2. java计算器界面布局_java编写计算器界面
  3. android炫彩文字和滚动的彩色背景
  4. Ubuntu禁用Compiz
  5. php中base64和js中base64可互相加解密
  6. 网络请求框架OkHttp4的使用与原理解析01:任务调度与拦截器分析
  7. 关于如何自动定时关机
  8. 制度化管理不等于流程化管理
  9. mutt配置文件_CentOS 下配置以 smtp 方式(msmtp)使用 mutt
  10. [2019 ICRA] Uncertain-Aware Path Planning for Navigation on Road Networks Using Argumented MDPs