I/O框架介绍

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

File类及使用

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

②   File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作。

③   File类直接处理文件和文件系统。比如删除文件,获取文件长度大小信息。

④   File类没有提供方法从文件中读取或向文件中存储信息。

⑤   构造方法:

a)         File(String directoryPath)

b)         File(String directoryPath,String filename)

c)         File(File dirObj,String filename)

⑥   File定义了获取File对象标准属性的方法。

⑦   部分File类常用方法:

a)         public String getName()

b)         public String getParent()

c)         public File getParentFile()

d)         public String getAbsolutePath()

e)         public boolean exists()

f)          public File[] listFile()

g)         public boolean isDirectory()

h)         public boolean isFile()

i)           public long length()

j)           boolean delete()

k)         boolean mkdir()

先在d盘下创建一个名为doc的文件夹,文件夹内创建一个txt文本文件

         File file = new File("d:\\doc");// windows下使用\\或/,linux下使用/
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());// 删除此抽象路径名表示的文件或目录--若目录下存在文件则不可删除

输出结果

d:\doc
d:\
true
false
true
0
false

创建目录及目录下创建文件

         File myFile = new File("d:\\zhangsan");
System.out.println(myFile.mkdir());// 创建不存在的目录 File myFile2 = new File("d:\\zhangsan\\ceshi.txt");
try {
System.out.println(myFile2.createNewFile());// 创建指定目录下不存在的文件
} catch (IOException e) {
e.printStackTrace();
}

输出结果

true
true

在zhangsan目录下的ceshi.txt中随意输入一些字符,再添加一张图片

获取目录下所有的文件

         String[] files = myFile.list();// 获取目录下所有的文件
for (String f : files) {
System.out.println(f);
}

输出结果

ceshi.txt
tu.png

返回所有以txt为后缀名的文件

         String[] files2 = myFile.list(new FilenameFilter() {

             @Override
public boolean accept(File dir, String name) {
return name.endsWith(".txt");//返回所有以txt为后缀名的文件
}
});
for (String f : files2) {
System.out.println(f);
}

输出结果

ceshi.txt

获取目录中所有的文件,名称及大小

         File[] files3=myFile.listFiles();
for(File f:files3){
System.out.println(f.getName()+"--"+f.length());
}

输出结果

ceshi.txt--140
tu.png--73425

返回目录下所有以txt为后缀名的文件,名称及大小

方法一

         File[] files4=myFile.listFiles(new FilenameFilter() {

             @Override
public boolean accept(File dir, String name) {
return name.endsWith(".txt");//返回目录下所有以txt为后缀名的文件
}
});
for(File f:files4){
System.out.println(f.getName()+"--"+f.length());
}

输出结果

ceshi.txt--140

方法二

         File[] files5=myFile.listFiles(new FileFilter() {

             @Override
public boolean accept(File pathname) {
return pathname.getName().endsWith(".txt");
}
});
for(File f:files5){
System.out.println(f.getName()+"--"+f.length());
}

输出结果

ceshi.txt--140

I/O流——File类及使用的更多相关文章

  1. Java基础---Java---IO流-----File 类、递归、删除一个带内容的目录、列出指定目录下文件夹、FilenameFilte

    File 类 用来将文件或者文件夹封装成对象 方便对文件与文件夹进行操作. File对象可以作为参数传递给流的构造函数 流只用操作数据,而封装数据的文件只能用File类 File类常见方法: 1.创建 ...

  2. 021.1 IO流——File类

    ########################################IO流:    IO:用于处理设备上的数据的技术.设备:内存,硬盘,光盘    流:系统资源,Windows系统本身就可 ...

  3. IO流——File类(文件流类)

    java语言的输入输出操作是借助于输入输出包java.io来实现的,按传输方向分为输入流与输出流,从外设传递到应用程序的流为输入流,将数据从应用程序输入到外设的流为输出流. File类的构造方法: 1 ...

  4. 09、IO流—File类与IO流

    目录 一.File类 基本认识 实用方法 获取功能 重命名功能(包含剪切) 判断功能 创建.删除文件 实际小案例 二.IO流 1.认识IO流 2.IO流基类介绍 字节流基类介绍 字符流基类介绍 三.节 ...

  5. JAVA:IO流——File类

    1.掌握File 类的作用 2.可以使用File 类中的方法对文件进行操作 所有的 io 操作都保存在 java.io 包中. 构造方法:public File (String pathname) 直 ...

  6. JavaIO流——File类

    1.掌握File 类的作用 2.可以使用File 类中的方法对文件进行操作 所有的 io 操作都保存在 java.io 包中. 构造方法:public File (String pathname) 直 ...

  7. Java IO流-File类

    2017-10-24 23:50:22 File类 File类:文件和目录路径名的抽象表示形式.该文件或者目录不一定真实存在. * 构造方法 File类有四种构造方法,主要采用的构造方法师第二种,也就 ...

  8. Java第三阶段学习(一、IO流------File类)

    一.IO概述: 把内存中的数据存入到硬盘(持久化设备)中叫做:输出(写)Output操作.JAVA软件往电脑硬盘上走叫输出. 把硬盘中的数据读取到到内存里叫做:输入(读)Input操作.电脑硬盘上往J ...

  9. Java—IO流 File类的常用API

    File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOE ...

随机推荐

  1. Microsoft Visual Studio has encountered a problem

    VS 2010 断点调试的时候,一运行到断点就报这个错误"Visual Studio has encountered a problem and needs to close", ...

  2. TODO的使用

    在vs2012中使用TODO添加注释

  3. RDD常用方法之subtract&intersection&cartesian

    subtract Return an RDD with the elements from `this` that are not in `other` .     def subtract(othe ...

  4. ldap实现用户认证

    LDAP的用户认证类. public class LDAPHelper { private DirectoryEntry _objDirectoryEntry; /// <summary> ...

  5. 安装和使用elasticsearch

    环境: win7 64位  jdk1.8.0  elasticsearch2.3.3 在官网下载elasticsearch2.3.3:https://www.elastic.co/thank-you? ...

  6. window.onload和window.document.readystate的探究

    在编写前端页面的时候,我们时常需要对页面加载的状态进行判断,以便进行相应的操作. 比如在移动端,时常需要在页面完全加载完成之前,先显示一个loading的图标,等待页面完成加载完成后,才显示出真正要展 ...

  7. OC编程的一些UI细节

    1/如果你想用一个半透明的View遮住当前窗口,连并NavigationBar也一并遮住的话,那么你需要 将视图添加到navigationController的View上 [self.navigati ...

  8. TCP、UDP、IP 协议分析

    http://rabbit.xttc.edu.cn/rabbit/htm/artical/201091145609.shtml  http://bhsc881114.github.io/2015/06 ...

  9. ARCGIS进行地理配准并加载到谷歌地球中查看

    普通的地图图片如何能让其附有经纬度坐标和投影信息,如何能将普通的地图图片加载到诸如谷歌地球等相关的三维地球软件当中进行生产或学习使用呢,这就要用到gis当中常用的一种功能,叫做地理配准.地理配准并不复 ...

  10. VMWare MAC系统调整磁盘

    VMware,打开虚拟文件,调整磁盘大小. 从40G调整到80G 进入虚拟机,打开终端 diskutil list;diskutil resizeVolume disk0s2 80GB http:// ...