Java学习之路(十一):IO流<前戏>
File类的概述和构造方法
构造方法:
- File(String pathname):根据一个路径得到File对象
- File(String parent,String child):根据一个目录和一个子文件/目录 得到File对象
- File(File parent,String child):根据一个父File对象和一个子文件/目录得到File对象
File更应该叫做一个路径,文件 路径 或者 文件夹 路径
File是指文件或者目录路径名的抽象表示形式
创建功能:
- public boolean createNewFile():创建文件,如果存在这样的文件,就不会创建了
- public boolean mkdir():创建一个文件夹(目录),如果存在这样的文件夹就不再创建了
- public boolean mkdir():迭代着创建文件夹,多层文件夹嵌套创建
重名名和删除功能:
- public boolean renameTo(File dest):把文件重名为指定的文件路径(和Linux一样,重名名其实就是剪贴粘贴)
- public boolean delete():删除文件或者文件夹(这种删除是不经过回收站的)
判断功能:
- public boolean isDirectory():判断是否是空目录
- public boolean isFile():判断是否是文件
- public boolean exists():判断是否存在
- public boolean canRead():判断是否可读
- public boolean canWrite():判断是否可写
- public boolean isHidden():判断是否隐藏
获取功能:
- public String getAbsolutePath():获取绝对路径
- public String getPath():获取路径
- public String getName():获取名称
- public long length():获取长度(文件的字节数)
- public long lastModified():获取最后一次的修改时间,毫秒值
- public String[] list():获取指定目录下的所有文件或者文件夹的名称 数组
- public File[] listFile():获取指定目录下的所有文件或者文件夹的File数组
我们自己实现一个文件名过滤器
package null08012133; import java.io.File; public class Demo01 { public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("C:/");
File[] fileList = file.listFiles();
for(File fileObj:fileList){
if(fileObj.isFile()&&fileObj.getName().endsWith(".sys")){
System.out.println(fileObj.getName());
}
} } }
使用内置的一些方法进行判断
package null08012133; import java.io.File;
import java.io.FilenameFilter; public class Demo02 { public static void main(String[] args){
File file = new File("C:/");
String[] fileNames = file.list(new FilenameFilter(){ @Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
File f = new File(dir,name);
return f.isFile()&&name.endsWith(".sys");
}
});
for(String fileName:fileNames){
System.out.println(fileName);
}
} }
Java学习之路(十一):IO流<前戏>的更多相关文章
- java学习之路--I/O流
java基础学习总结——流 一.JAVA流式输入/输出原理
- 新篇章之我的java学习之路下
昨天写下了人生的第一篇博客,今天接着写我的java学习之路有关开发及框架的学习过程. 想要学好java语言,只学习一些java的基本语法对实际开发中的用处还是不大的,所以我们还要掌握一些有关javaW ...
- java学习之路之javaSE基础2
java学习之路之javaSE基础2 所有的代码都是引用他人写的. 1.逻辑运算符 //&,|,^,! //int x = 10; //5 < x < 15 //x > 5 ...
- java学习之路之javaSE基础1
<h2>java学习之路之javaSE基础1</h2> <div> ###01.01_计算机基础知识(计算机概述)(了解)* A:什么是计算机?计算机在生活中的应用 ...
- Java学习之路(转)
Java学习之路(书籍推荐) 一.基础类 1.<Thinking in java>(阅读2遍),入门第一位是建立正确的概念 2.<Core Java>这本书更贴近实践,更多 ...
- JAVA学习之路与大家分享
这是我四年以前总结的JAVA学习之路,希望对初学者或想从事JAVA开发的人有帮助. 本人是软件工程专业出身,先后学过C.C++.JAVA.VB.delphi等等开发语言以及网络相关管理技术.哎,好久不 ...
- Java 学习之路 -- day00
Java 学习之路 -- day00 Typora 快捷键操作 标题:#+空格 2. *斜体* 3. **加粗** 4. **斜体加粗*** 5. ~~删除线~~ 6. > 引用 7. ···分 ...
- Java学习之路(十二):IO流<二>
字符流 字符流是可以直接读写字符的IO流 使用字符流从文件中读取字符的时候,需要先读取到字节数据,让后在转换为字符 使用字符流向文件中写入字符时,需要把字符转为字节在写入文件 Reader和Write ...
- Java学习之路(十二):IO流
IO流的概述及其分类 IO流用来处理设备之间的数据传输,Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 流按流向分为两种:输入流(读写数据) 输出流(写数据) 流按操作 ...
随机推荐
- Python网络编程总结
----learn from luffycity---- 1. 什么是C/S架构? C指的是client(客户端软件),S指的是Server(服务端软件),C/S架构就是基于网络实现客户端与服务端通信 ...
- 全面理解iOS开发中的Scroll View[转]
from:http://mobile.51cto.com/hot-430409.htm 可能你很难相信,UIScrollView和一个标准的UIView差异并不大,scroll view确实会多一些方 ...
- Robot Perception for Indoor Navigation《室内导航中的机器人感知》
Felix Endres 论文下载 Technische Fakult¨ atAlbert-Ludwigs-Universit¨ at Freiburg Betreuer: Prof. Dr. Wol ...
- java 泛型的类型擦除和桥方法
oracle原文地址:https://docs.oracle.com/javase/tutorial/java/generics/erasure.html 在Java中,泛型的引入是为了在编译时提供强 ...
- Java内存模型(二)
volatile型变量的特殊规则 volatile是Java虚拟机提供的最轻量级的同步机制,当一个变量被定义成volatile后,它将具备两种特性,第一是保证此变量对所有线程的可见性,这里的“可见性” ...
- hdu 5064 满足b2−b1≤b3−b2... 的最长子序列
http://acm.hdu.edu.cn/showproblem.php?pid=5064 要找出一个数组中满足b2−b1≤b3−b2≤⋯≤bt−bt−1 的最大的t 直接引题解: 1003 Fin ...
- calltree+graphviz 绘出项目函数调用图
install calltree: download from http://linux.softpedia.com/progDownload/calltree-Download-971.html f ...
- ksplatform学习笔记
1.viewResolver配置中的: <bean id="viewResolver" class="org.springframework.web.servlet ...
- (原创)Hibernate 使用过程中(尤其是多对多关联中的级联保存和级联删除)的注意事项(基于项目的总结)
一.先上知识点: 1.hibernate多对多关联关系中最重要的参数是(基于配置文件xxx.hbm.xml文件形式): 1):inverse属性,如果设置inverse=“true”就代表让对方参与维 ...
- hibernate 延迟加载深入分析(persistentSet的延迟加载)
Hibernae 的延迟加载是一个非常常用的技术,实体的集合属性默认会被延迟加载,实体所关联的实体默认也会被延迟加载.Hibernate 通过这种延迟加载来降低系统的内存开销,从而保证 Hiberna ...