I/O流——File类及使用
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类及使用的更多相关文章
- Java基础---Java---IO流-----File 类、递归、删除一个带内容的目录、列出指定目录下文件夹、FilenameFilte
File 类 用来将文件或者文件夹封装成对象 方便对文件与文件夹进行操作. File对象可以作为参数传递给流的构造函数 流只用操作数据,而封装数据的文件只能用File类 File类常见方法: 1.创建 ...
- 021.1 IO流——File类
########################################IO流: IO:用于处理设备上的数据的技术.设备:内存,硬盘,光盘 流:系统资源,Windows系统本身就可 ...
- IO流——File类(文件流类)
java语言的输入输出操作是借助于输入输出包java.io来实现的,按传输方向分为输入流与输出流,从外设传递到应用程序的流为输入流,将数据从应用程序输入到外设的流为输出流. File类的构造方法: 1 ...
- 09、IO流—File类与IO流
目录 一.File类 基本认识 实用方法 获取功能 重命名功能(包含剪切) 判断功能 创建.删除文件 实际小案例 二.IO流 1.认识IO流 2.IO流基类介绍 字节流基类介绍 字符流基类介绍 三.节 ...
- JAVA:IO流——File类
1.掌握File 类的作用 2.可以使用File 类中的方法对文件进行操作 所有的 io 操作都保存在 java.io 包中. 构造方法:public File (String pathname) 直 ...
- JavaIO流——File类
1.掌握File 类的作用 2.可以使用File 类中的方法对文件进行操作 所有的 io 操作都保存在 java.io 包中. 构造方法:public File (String pathname) 直 ...
- Java IO流-File类
2017-10-24 23:50:22 File类 File类:文件和目录路径名的抽象表示形式.该文件或者目录不一定真实存在. * 构造方法 File类有四种构造方法,主要采用的构造方法师第二种,也就 ...
- Java第三阶段学习(一、IO流------File类)
一.IO概述: 把内存中的数据存入到硬盘(持久化设备)中叫做:输出(写)Output操作.JAVA软件往电脑硬盘上走叫输出. 把硬盘中的数据读取到到内存里叫做:输入(读)Input操作.电脑硬盘上往J ...
- Java—IO流 File类的常用API
File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOE ...
随机推荐
- usb-serial驱动问题
pl2303 prolific usb-serial驱动,驱动安装后,win10下仍然有问题,选择更新驱动程序-从计算机选择-列表选择-尝试不同版本程序.
- Java上传文件
Action /* * 后台商品管理的Action */ public class AdminProductAction extends ActionSupport implements ModelD ...
- OPNET下 op_pk_copy()的时间问题
op_pk_copy()是生成新的数据包,包的op_pk_create_time_get()是新数据包的生成时间,统计数据包的端到端时延,以及服务时延需要注意:
- Linq并行执行
一. 并行LINQ 1. 并行查询 .NET4在System.Linq名称空间中包含一个新类ParalleIEnumerable ,可以分解查询的工作使其分布在多个线程上.尽管Enmerab ...
- 十、DG
1.DG是dependency graph,我认为是依赖图,和DAG(有向无环图)的区别:DAG用来做场景管理,每个node代表的不是tranform就是shape,有父子关系. DG是代表了每个实体 ...
- Sublime Text 3 引用插件
汉化插件 点击 View> Show Console 输入import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b ...
- Spark Streaming源码解读之数据清理内幕彻底解密
本期内容 : Spark Streaming数据清理原理和现象 Spark Streaming数据清理代码解析 Spark Streaming一直在运行的,在计算的过程中会不断的产生RDD ,如每秒钟 ...
- oracle修改字段长度
alter table 表名 modify (字段名 字段类型长度);alter table cachemsg modify (callernum varchar(40));
- FreeMark学习(三)
沉淀的心 freemarker学习笔记--设计指导 <# ... > 中存放所有freemaker的内容,之外的内容全部原样输出.<@ ... /> 是函数调用两个定界 ...
- IAR调节字体大小
在主面板上点击tools->Options,然后点开Editor,选择下面的Colors and Fonts选项,最后选右上方的Font,选择要设置的字体就OK了.