Java输入输出流(IO)-----文件类File详解
1.java.io.File类简介
- 凡是与输入、输出相关的类、接口等都定义在java.io包下
- File是一个类,可以有构造器创建其对象。此对象对应着一个文件(.txt .avi .doc .ppt .mp3 .jpg)或文件目录
- File类对象是与平台无关的
- File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成
- File类的对象常作为io流的具体类的构造器的形参
2.createNewFile() delete() lastModified() exists()
package com.nio.File; import java.io.File;
import java.io.IOException;
import java.util.Date;
/**
* 文件操作
* @author yyx
* 2019年1月15日
*/
public class FileOperateFirst {
public static void main(String[] args) {
String filePath = "D:" + File.separator + "testfile.txt";
System.out.println(filePath); File file = new File(filePath); // 判断文件是否存在且是不是文件
if (file.isFile() && file.exists()) {
// 删除文件
file.delete();
} else {
try {
// 创建文件
file.createNewFile();
// 打印文件最后编辑时间
System.out.println(new Date(file.lastModified()));
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
3.mkDir() mkDirs() list() listFiles()
package com.nio.File; import java.io.File;
import java.io.IOException; /**
* 文件操作
*
* @author yyx 2019年1月15日
*/
public class FileOperateSecond {
public static void main(String[] args) {
String mkdirPath = "D:" + File.separator + "testfile";
File mkdirFile = new File(mkdirPath);
// isDirectory() 测试此抽象路径名表示的文件是否为目录
if (!mkdirFile.exists() && !mkdirFile.isDirectory()) {
// mkDir():创建一个文件目录。只有在上层文件目录存在的情况下,才能返回true
System.out.println(mkdirFile.mkdir());
} String mkdirsPath1 = "D:" + File.separator + "testfile1" + File.separator + "file1";
File mkdirsFile1 = new File(mkdirsPath1);
if (!mkdirsFile1.exists() && !mkdirsFile1.isDirectory()) {
// 此处因testfile1目录不存在,故报错
// System.out.println(mkdirsFile1.mkdir());
} String mkdirsPath2 = "D:" + File.separator + "testfile" + File.separator + "file2" + File.separator + "file3";
File mkdirsFile2 = new File(mkdirsPath2);
if (!mkdirsFile2.exists() && !mkdirsFile2.isDirectory()) {
// mkDirs():创建一个文件目录。若上层文件目录不存在,一并创建
System.out.println(mkdirsFile2.mkdirs());
} /*
* 只有上级目录存在,才能在该目录下创建文件
*/
String filePath1 = "D:" + File.separator + "testfile1" + File.separator + "filepath.txt";
File file1 = new File(filePath1);
if (!file1.exists()) {
try {
// 报错 系统找不到指定的路径
// file1.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
} String filePath2 = "D:" + File.separator + "testfile" + File.separator + "file2" + File.separator
+ "filepath1.txt";
File file2 = new File(filePath2);
if (!file2.exists()) {
try {
System.out.println(file2.createNewFile());
} catch (IOException e) {
e.printStackTrace();
}
} /*
* list()返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录
* listFiles()返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件 可以使用递归循环取出目录下的文件和目录
*/
File file3 = new File(mkdirPath);
String[] strs = file3.list();
for (int i = 0; i < strs.length; i++) {
System.out.println(strs[i]);
} System.out.println("*******************"); File[] files = file3.listFiles();
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
}
Java输入输出流(IO)-----文件类File详解的更多相关文章
- 在java poi导入Excel通用工具类示例详解
转: 在java poi导入Excel通用工具类示例详解 更新时间:2017年09月10日 14:21:36 作者:daochuwenziyao 我要评论 这篇文章主要给大家介绍了关于在j ...
- (java基础)Java输入输出流及文件相关
字节流: 所有的字节输入输出都继承自InputStream和OutputStream,通常用于读取二进制数据,最基本单位为单个字节,如图像和声音.默认不使用缓冲区. FileInputStream和F ...
- java开发知识IO知识之输入输出流以及文件
目录 java开发知识IO知识之输入输出流以及文件 一丶流概述 二丶输入流讲解 InputStream类. 1. 输入流以及类层次结构 2.文件操作.使用输入流读取 三丶输出流 OutputStrea ...
- java:利用java的输入/输出流将一个文件的每一行+行号复制到一个新文件中去
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- Java输入/输出流体系
在用java的io流读写文件时,总是被它的各种流能得很混乱,有40多个类,理清啦,过一段时间又混乱啦,决定整理一下!以防再忘 Java输入/输出流体系 1.字节流和字符流 字节流:按字节读取.字符流: ...
- Java 输入输出流 转载
转载自:http://blog.csdn.net/hguisu/article/details/7418161 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所 ...
- java输入输出流总结 转载
一.基本概念 1.1 什么是IO? IO(Input/Output)是计算机输入/输出的接口.Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是 ...
- Java输入输出流(转载)
转自http://blog.csdn.net/hguisu/article/details/7418161 目录(?)[+] 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作 ...
- Java输入输出流(1)
1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java全部的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读 ...
随机推荐
- Java之旅_高级教程_数据结构
摘自:http://www.runoob.com/java/java-data-structures.html 了解即可 Java 数据结构 Java 工具包提供了强大的数据结构.在Java中的数据结 ...
- es修改指定的field(partial update)
PUT /index/type/id 创建文档&替换文档,就是一样的语法一般对应到应用程序中,每次的执行流程基本是这样的:1.应用程序发起一个get请求,获取到document,展示到前台界面 ...
- Redis和Memcache的区别是什么
Redis和Memcache都是内存数据库,但它们之间还是有区别的,跟着ytkah看看Redis和Memcache的区别吧 Redis 支持多种数据结构,如string,list,dict,set,z ...
- 关于ios下字体描边的一个细节
转载请注明,来自:http://blog.csdn.net/skyman_2001 CGContextSetTextDrawingMode(context, kCGTextStroke); ...
- DevExpress换肤
procedure TForm1.cxComboBox1PropertiesChange(Sender: TObject); begin // 这个地方必须是UserSkin,不然不会起作用 dxSk ...
- 002-pro ant design-Unexpected end of JSON input while parsing near '...错误解决方案
解决方法:先清除缓存,再重新安装 清除缓存 npm cache clean --force 重新安装 npm install
- ABPIAbpSession
AbpSession定义了几个关键属性: UserId:当前用户的Id或空(如果没有当前用户),如果调用需要授权的代码,它就不能为空. TenantId:当前租户的Id或空(如果没有当前租户:尚未登录 ...
- vue 本地静态图片路径写法
在img标签中 <img src="../../assets/images/haibao/06-2@2x.png" class="" width=&quo ...
- python的执行顺序
为了区分是主动执行(如python test.py)还是被动调用(如import test),python用__name__来进行标识. 当主动执行时,__name__为__main__,当被调用时, ...
- Centos7下ups监控apcupsd的使用
什么是UPS UPS-Uninterrupted Power System:利用电池化学能作为后备能量,在市电断电等电网故障时,不间断地为用户设备提供(交流)电能的一种能量转换装置. UPS的主要功能 ...