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 ...
随机推荐
- Linux命令学习备忘
格式: 命令:原理:实践及截图 1.su <user> 执行该命令,需要输入password,它是<user>中定义的用户的password,即,要变换成的用户的passw ...
- 照虎画猫写自己的Spring
从细节跳出来 看了部分Spring的代码,前面用了四篇内容写了一些读书笔记. 回想起来,论复杂度,Spring够喝上好几壶的.他就像一颗枝繁叶茂的大树,远处看,只是一片绿:走近看,他为你撑起一片小天地 ...
- angular 使用概术
框架技术细节说明 must 该文档详细说明了基于Angular的机制及关键技术. 目录: - 路由机制 - 通过路由来切分页面模块 - Lazyload机制 - 指令 - 程序bootstrap - ...
- let and const
let 和 const 命令 let 命令 基本用法 ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. { let a = 10; v ...
- Json解析封装GsonUtil
感觉Json解析都快谈不上一门技术了,在Android Studio上可以直接使用JsonFormat插件,一键就解析出Json所转换的Javabean,再配合GsonUtil的使用,Json解析的步 ...
- C语言之二维数组棋盘游戏
#include<iostream> #include<stdio.h> using namespace std; int main() { //-1 没人赢 0:O赢 1:X ...
- 在使用ajax实现三级联动调用数据库数据并通过调出的数据进行二级表单查询
在使用ajax实现三级联动查询数据库数据后再使用ajax无刷新方式使用三级联动调出的数据进行二级查询 但是现在遇到问题,在二级查询的时候期望是将数据以表格的形式展示在三级联动的下方,但是现在在查询后会 ...
- AFNetworking提示3840 Unescaped control character around character XXX
处理办法:找到AFNetworking包中AFURLResponseSerialization.m文件在第250行修改代码如下: if (data.length > 0 && ! ...
- 河南省第八届ACM省赛---引水工程
引水工程 时间限制:2000 ms | 内存限制:65535 KB 难度: 描述 南水北调工程是优化水资源配置.促进区域协调发展的基础性工程,是新中国成立以来投资额最大.涉及面最广的战略性工程,事 ...
- HDU 2795 Billboard 线段树,区间最大值,单点更新
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...