介绍:

IO(Input/Output)是计算机输入/输出的接口.java的核心库java.io提供了全方面的IO接口,包括:文件系统的操作,文件读写,标准设备输出等等

  • File  文件和目录类
  • InputStream  OutputStream 字节流读写类
  • Reader writer 字符流读写类

File类及使用

一个File类的对象,表示了磁盘上的文件和目录

File  file=new File("C:\\FileDemo");
System.out.println(file.getAbsolutePath());//获得文件或目录的绝对路径
System.out.println(file.getParent());//获得上级目录的字符串
System.out.println(file.isDirectory());//判断是不是文件夹或是目录
System.out.println(file.isFile());//判断是不是文件
System.out.println(file.exists());//判断目录是否存在
System.out.println(file.length());//测试目录大小
System.out.println(file.delete());//可以删除目录(只能删除空的目录)
File myFile=new File("C:\\zhangsan");
System.out.println(myFile.mkdir());//创建目录
File myFile2=new File("C:/zhangsan/tanlei.txt");
System.out.println(myFile2.createNewFile());//创建空文件
String[] files=file.list();//查出目录下的所有文件和目录
for(String file1:files){
System.out.println(file1);
}
String[] files2=file.list(new FilenameFilter() {//通过匿名内部类来构建    过滤目录和文件

        @Override
public boolean accept(File dir, String name) {//dir 遍历的目录 name 文件,名或目录名
// TODO Auto-generated method stub
return name.endsWith(".txt");//以什么结尾的文件过滤
}
});
for(String file2:files2){
System.out.println(file2);
}
//获得文件的相关信息  File[]
File[] files3=file.listFiles();
for(File file3:files3){
System.out.println(file3.getName()+" "+file3.length());
}
//获得文件的名字和字节数大小
File[] files4=file.listFiles(new FilenameFilter() { @Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
return name.endsWith(".txt");
}
});
for(File file4:files4){
System.out.println(file4.getName()+" "+file4.length());
}
//获得文件名和大小
File[] files5=file.listFiles(new FileFilter() { @Override
public boolean accept(File pathname) {
// TODO Auto-generated method stub
return pathname.getName().endsWith(".txt");
}
}); for(File file5:files5){
System.out.println(file5.getName()+" "+file5.length());
}

(一)流--IO框架的更多相关文章

  1. Storm和JStorm(阿里的流处理框架)

    本文导读: 1.What——JStorm是什么? 1.1 概述 .2优点 .3应用场景 .4JStorm架构 2.Why——为什么启动JStorm项目?(与storm的区别) .1storm的现状.缺 ...

  2. java IO框架分析

    jave.io框架 2010-11-10 22:18:34|  分类: 默认分类|举报|字号 订阅     可从IO的类层次,IO框架的设计模式来论述. 总体来说,IO可以分为字节流和字符流,不同在于 ...

  3. Apache流处理框架对比

    分布式流处理,类似于MapReduce这样的通用计算模型,但是却要求它能够在毫秒级别或者秒级别完成响应.这些系统可以用DAG表示流处理的拓扑. Points of Interest 在比较不同系统是, ...

  4. Storm分布式实时流计算框架相关技术总结

    Storm分布式实时流计算框架相关技术总结 Storm作为一个开源的分布式实时流计算框架,其内部实现使用了一些常用的技术,这里是对这些技术及其在Storm中作用的概括介绍.以此为基础,后续再深入了解S ...

  5. 事件流处理框架NEsper for .NET z

    复合事件处理(Complex Event Processing)介绍提到了开源的Esper,NEsper 是一个事件流处理(Event Stream Processing,ESP)和复杂事件处理(Co ...

  6. socket.io框架

    socket.io框架 一.问题背景 目前公司在互联网产品上需要程序与前端部分要进行一个实时交互,在进行一定程度上的选型后,决定使用socket.io框架进行一个实践,算是公司的一个新的 尝试,也算是 ...

  7. Dream_Spark-----Spark 定制版:005~贯通Spark Streaming流计算框架的运行源码

    Spark 定制版:005~贯通Spark Streaming流计算框架的运行源码   本讲内容: a. 在线动态计算分类最热门商品案例回顾与演示 b. 基于案例贯通Spark Streaming的运 ...

  8. 爬虫之多线程 多进程 自定义异步IO框架

    什么是进程? 进程是程序运行的实例,是系统进行资源分配和调度的一个独立单位,它包括独立的地址空间,资源以及1个或多个线程. 什么是线程? 线程可以看成是轻量级的进程,是CPU调度和分派的基本单位. 进 ...

  9. Apache Samza流处理框架介绍——kafka+LevelDB的Key/Value数据库来存储历史消息+?

    转自:http://www.infoq.com/cn/news/2015/02/apache-samza-top-project Apache Samza是一个开源.分布式的流处理框架,它使用开源分布 ...

随机推荐

  1. HBase底下的存储机制

    Split机制:可以理解为HDFS上Block一分二的情况.每个Table一开始只有一个region,随着数据不断插入表,region不断增大,当增大到一个阀值的时候,Hregion就会等分会两个新的 ...

  2. SpringBoot防XSS攻击

    1 . pom中增加依赖 <!-- xss过滤组件 --> <dependency> <groupId>org.jsoup</groupId> < ...

  3. Django项目:CRM(客户关系管理系统)--45--37PerfectCRM实现King_admin添加用户时密码加密

    #views # ————————02PerfectCRM创建ADMIN页面———————— from django.shortcuts import render # ————————04Perfe ...

  4. 移动端meta汇总

    part1 一.天猫(http://m.tmall.com) <title>天猫触屏版</title> <meta content="text/html; ch ...

  5. 从零开始Android逆向教程(二)——什么是Xposed

    前言在阅读本文之前,假设你的手机已经root,并且已经成功安装好了 XposedInstaller. Xposed是什么?       Xposed 是一个 Android 平台上的动态劫持框架,通过 ...

  6. 用CSS添加选中文字的背景色

  7. org.hibernate.service.UnknownServiceException: Unknown service requested [org.hibernate.engine.jdbc.connections.spi.ConnectionProvider]

    蜜汁问题? 完全不知道怎么解决啊

  8. 使用Spring Cache + Redis + Jackson Serializer缓存数据库查询结果中序列化问题的解决

    应用场景 我们希望通过缓存来减少对关系型数据库的查询次数,减轻数据库压力.在执行DAO类的select***(), query***()方法时,先从Redis中查询有没有缓存数据,如果有则直接从Red ...

  9. eclipse2018整合tomcat9

    eclipse2018整合tomcat9 选择 Windows --> preferences --> server --> runtime environmen:点击“add”按钮 ...

  10. Vijos1212 Way Selection [2017年6月计划 二分图03]

    Way Selection 背景 小杉家族遭遇了前所未有的大危机 他想知道怎么逃生 描述 小杉家族r个人正在一片空地上散步,突然,外星人来了…… 留给小杉家族脱逃的时间只有t秒,每个小杉都有一个跑的速 ...