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. JNI相关知识

    JNI(Java Native Interface,JAVA原生接口) 使用JNI可以使Java代码和其他语言写的代码(如C/C++代码)进行交互. 问:为什么要进行交互? |-  首先,Java语言 ...

  2. flume整合kafka

    # Please paste flume.conf here. Example: # Sources, channels, and sinks are defined per # agent name ...

  3. 如何使用PL/SQL进行远程数据库连接

    1.先找到Oracle数据库的安装地址然后找到network->ADMIN->tnsnames.ora文件 2.添加下面文件到tnsnames.ora文件中去,红色部分是需要修改的部分   ...

  4. 字符集和字符编码(Charset & Encoding)

    字符集和字符编码(Charset & Encoding)[转] 1.基础知识 计算机中储存的信息都是用二进制数表示的:而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按 ...

  5. 使用wcf服务捕捉到“POST http://yourIP/WCFService.svc 405 (Method Not Allowed) ”错误!

    在程序中使用了一个wcf服务,调试时无任何问题(win7 64位,iis6.1),发布到部门服务器上没有问题(server2008 64位),但是部署到实际服务器上时(server2008 iis6. ...

  6. TCP\IP三次握手连接,四次握手断开分析

    TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标 ...

  7. Jmeter plugin jp@gc - PerfMon Metrics Collector

    Jmeter由于是开源工具,所以目前有很多插件可以供使用,最简单的方法是先把Plugin Manager安装了 下载地址:https://jmeter-plugins.org/wiki/Plugins ...

  8. django orm 操作

    django的orm使用方便,但对于一些复杂的操作,需要遵循特定的规范,特例特别记录一下: 模型: from django.db import models class Blog(models.Mod ...

  9. 谈谈Ruby中的类变量

    Ruby中的类变量,很多文章都是不太建议使用的,主要原因在于他的一些特性容易导致犯一些错误,尤其在广泛使用元编程的时候. 初步接触类变量可能觉得他跟C++的类静态成员和Java中的静态变量没什么区别, ...

  10. MongoDB(七)MongoDb数据结构

    首先,向数据库插入一条bjson数据 首先是定义文档,然后使用admin用户名密码登录,进入test数据库,向test数据库中插入此文档("表名称和表中的记录") 插入结果,查看m ...