Java中File的使用
File
代表文件或者目录的类
构造函数
File(File parent,String child)---代表了指定父目录下的指定的子文件或者子目录
File(String pathname)---代表了指定路径对应的文件或者目录对象
重要方法
创建
createNewFile()---只能用来创建文件,并且一次只能创建一个文件,要求文件存储的目录必须真实存在
mkdir()---只能用来创建目录,不能用来创建多层目录
mkdirs()---创建多层目录
删除
delete()---用来删除文件或者目录。如果目录下有子文件或者子目录,则删除失败--直接从计算机中移除,不能撤销删除
设置
renameTo(File dest)---重命名指定的文件
setLastModified(long time)---设置文件的最后一次修改时间
setReadable(boolean b)---设置文件是否可读
setReadOnly()---设置文件为只读
获取
listFiles()---获取指定目录下的子目录和子文件对象组成的数组
getName()---获取文件的名字
getParent()---获取父目录的路径字符串
lastModified()---获取最后一次修改时间
判断
canRead()---判断文件是否可读
canWrite()---判断文件是否可写
isHidden()---判断file是否是一个隐藏文件
isAbsolute()---判断是否是一个绝对路径
isDirectory()---判断这个file对象是否是一个目录
isFile()---判断这个file对象是否是一个文件
exists()---判断file在计算机上是否真实存在
路径
绝对路径:以/或者盘符开头的路径---直接跳转到指定的路径
相对路径:不以/或者盘符开头的路径---相对路径以当前路径作为基准进行计算
读取文件夹下的文件并输出
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String dirname="/tmp";//文件路径
File f1=new File(dirname); //创建一个文件对象,指定文件路径
if (f1.isDirectory()) { //判断此文件是否为文件夹
System.out.println("目录/"+dirname);
String s[]=f1.list(); //将f1下的文件放入数组中
for (int i = 0; i < s.length; i++) {//遍历这个数组,每个文件判断一次
File file=new File(dirname+"/"+s[i]); //创建文件对象
if (file.isDirectory()) { //判断是否为文件夹
System.out.println(s[i]+"是一个目录");
}else {
System.out.println(s[i]+"是一个文件");
try {
//已经判断是文件,就可以用流来打开这个文件输出
FileInputStream fil=new FileInputStream(dirname+"/"+s[i]+"");//创建文件输入流对象,并指定文件的路径
InputStreamReader iStreamReader=new InputStreamReader(fil); //创建字符输入流,将文件内容传入
StringBuffer sBuffer=new StringBuffer();//创建字符接收
while (iStreamReader.ready()) {//。。循环读取
sBuffer.append((char)iStreamReader.read());//将内容添加到字符串变量中
}
System.out.println(sBuffer.toString());//输出
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}else {
System.out.println(dirname+"不是一个目录");
}
}
Java中File的使用的更多相关文章
- java中File类的常用方法总结
java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...
- Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别
1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...
- java中File的delete()方法删除文件失败的原因
java中File的delete()方法删除文件失败的原因 学习了:http://hujinfan.iteye.com/blog/1266387 的确是忘记关闭了: 引用原文膜拜一下: 一般来说 ja ...
- 关于Java中File的renameTo函数
先看Java编程实战经典中的一道习题: 编写程序,程序运行时输入目录名称,并把该目录下的所有文件名后缀修改成.txt. 按照题意,我在d盘新建了文件夹test,并在该文件夹下新建了一个文件file.d ...
- java中File类的相关学习
File类 1.关于系统路径分割符. 在Windows中,使用反斜杠“\”作为路径分割符,比如“c:\test”,但是java中反斜杠表示转义,所以需要用“C:\\test”在程序中来表示路径.还可以 ...
- java中File类的常用所有方法及其应用
创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir() 在指定位置创建一个单级文件夹.mkdirs() 在指定位置 ...
- Java中File
1.什么是流? Java中的流是个抽象的概念,当程序需要从某个数据源读入数据的时候,就会开启一个数据流,数据源可以是文件.内存或网络等等.2.使用File类操作文件或目录属性 public class ...
- java中File类应用:遍历文件夹下所有文件
练习: 要求指定文件夹下的所有文件,包括子文件夹下的文件 代码: package 遍历文件夹所有文件; import java.io.File; public class Test { public ...
- java中File类中list()和listFiles()方法区别
list()和listFiles()方法区别: 1.返回值类型不同:前者为String数组,后者为File对象数组 2.数组中元素内容不同:前者为string类型的[文件名](包含后缀名),后者为Fi ...
- Java中File类总结
/** * @Title:JavaFile.java * @Package:com.yhd.chart.model * @Description:File类测试 * @author:Youhaidon ...
随机推荐
- bzoj1001(对偶图最短路)
显然是个最大流问题. 边数达到了10^6级别,显然用dinic算法会TLE 对于一个平面图来说,当然用对偶图的最短路来求最小割(最大流) SPFA转移的时候注意判断边界情况 应该要开longlong才 ...
- 二:Maven中pom.xml元素详解
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628201.html 一个pom.xml中包含了许多标签,各个标签是对项目生命周期.依赖管理的配置.常用的主 ...
- Oracle 存储过程的导出导入序列的导出
昨天发布网站,需要将oracle的存储过程导出来,再在新的电脑加上去.登陆—>工具—>导出用户对象—>选取需要导出的存储过程—>导出 保存格式为.sql.当然利用该种方法也可以 ...
- C#中制作MDI窗体
在VB中做 MDI窗体很简单.在C#里就没有这个轻松了,不过还是很方便的. 首先在C#里添加一个窗体,命名为MdiMain,将其IsMdiContainer设定成true,这样MDI主窗体就建立了.然 ...
- javaweb学习方案1
一.JAVA环境变量的配置1.首先下载JDK JDK可以在Oracle(甲骨文)公司的官方网站http://www.oracle.com下载2.安装完成后查看JDK安装路径一般是C:\Program ...
- [转载] gitbook安装与使用
转载自http://blog.csdn.net/xiaocainiaoshangxiao/article/details/46882921 废话不说,直接主题: gitbook安装 ========= ...
- Vue学习笔记-Vue基础入门
此篇文章是本人在学习Vue是做的部分笔记的一个整理,内容不是很全面,希望能对阅读文章的同学有点帮助. 什么是Vue? Vue.js (读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式 ...
- netty 入门二 (传输bytebuf 或者pojo)
基于流的数据传输:在基于流的传输(如TCP / IP)中,接收的数据被存储到套接字接收缓冲器中. 不幸的是,基于流的传输的缓冲区不是数据包的队列,而是字节队列. 这意味着,即使您将两个消息作为两个独立 ...
- Spring Boot中采用Mockito来mock所测试的类的依赖(避免加载spring bean,避免启动服务器)
最近试用了一下Mockito,感觉真的挺方便的.举几个应用实例: 1,需要测试的service中注入的有一个dao,而我并不需要去测试这个dao的逻辑,只需要对service进行测试.这个时候怎么办呢 ...
- 如何完全根据官方下载包搭建hibernate框架
好久没有用s2sh的框架了,最近业务需要又要拾起来.在搭框架时,发现之前都是复制配置文件,对具体的细节却很懵懂,所以要从新来一遍,也是一次新的学习. 我使用的版本是hibernate-release- ...