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在计算机上是否真实存在

路径

绝对路径:以/或者盘符开头的路径---直接跳转到指定的路径

相对路径:不以/或者盘符开头的路径---相对路径以当前路径作为基准进行计算

Java中流的概念

读取文件夹下的文件并输出

 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的使用的更多相关文章

  1. java中File类的常用方法总结

    java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...

  2. Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别

    1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...

  3. java中File的delete()方法删除文件失败的原因

    java中File的delete()方法删除文件失败的原因 学习了:http://hujinfan.iteye.com/blog/1266387 的确是忘记关闭了: 引用原文膜拜一下: 一般来说 ja ...

  4. 关于Java中File的renameTo函数

    先看Java编程实战经典中的一道习题: 编写程序,程序运行时输入目录名称,并把该目录下的所有文件名后缀修改成.txt. 按照题意,我在d盘新建了文件夹test,并在该文件夹下新建了一个文件file.d ...

  5. java中File类的相关学习

    File类 1.关于系统路径分割符. 在Windows中,使用反斜杠“\”作为路径分割符,比如“c:\test”,但是java中反斜杠表示转义,所以需要用“C:\\test”在程序中来表示路径.还可以 ...

  6. java中File类的常用所有方法及其应用

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir()  在指定位置创建一个单级文件夹.mkdirs()  在指定位置 ...

  7. Java中File

    1.什么是流? Java中的流是个抽象的概念,当程序需要从某个数据源读入数据的时候,就会开启一个数据流,数据源可以是文件.内存或网络等等.2.使用File类操作文件或目录属性 public class ...

  8. java中File类应用:遍历文件夹下所有文件

    练习: 要求指定文件夹下的所有文件,包括子文件夹下的文件 代码: package 遍历文件夹所有文件; import java.io.File; public class Test { public ...

  9. java中File类中list()和listFiles()方法区别

    list()和listFiles()方法区别: 1.返回值类型不同:前者为String数组,后者为File对象数组 2.数组中元素内容不同:前者为string类型的[文件名](包含后缀名),后者为Fi ...

  10. Java中File类总结

    /** * @Title:JavaFile.java * @Package:com.yhd.chart.model * @Description:File类测试 * @author:Youhaidon ...

随机推荐

  1. Scratch——教小孩子学编码

    教小孩子学编码 http://scratch.mit.edu/ http://v.163.com/movie/2013/3/H/I/M92389L06_M9238GTHI.html

  2. [O]SQL SERVER下有序GUID和无序GUID作为主键&聚集索引的性能表现

     背景 前段时间学习<Microsoft SQL Server 2008技术内幕:T-SQL查询>时,看到里面关于无序GUID作为主键与聚集索引的建议,无序GUID作为主键以及作为聚集索引 ...

  3. javascript第八章--事件

    ① 事件流 ② 事件处理程序 ③ 事件对象 ④ 事件类型 ⑤ 内存和性能 ⑥ 模拟事件

  4. ionic开发遇到的坑及总结

    前言 ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS的优化.ionic会是一个可 ...

  5. Maven3 快速入门

    Maven3 快速入门 Maven 是目前大型项目构建的必备知识.本章会通过介绍 Maven 的作用,Maven 的基本语法,以及搭建企业级项目架构来快速入门 Maven .前两部分是理论知识只需要了 ...

  6. socket.io 入门篇(三)

    本文原文地址:https://www.limitcode.com/detail/5926e3a056fba70278bf2044.html 前言 上篇我们介绍了 socket.io 中room的概念和 ...

  7. 问题(一)---线程池,锁、堆栈和Hashmap相关

    一.线程池: 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力. 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中 ...

  8. Android-DataBinding入门1

    1.需要开启DataBinding功能: 在build.gradle配置: android{ dataBinding{ enabled = true } } 2.布局 布局中,根节点要以layout开 ...

  9. thinkphp 使用插件异步上传图片或者文件

    使用tp做一些上传的功能,的确挺方便.但是在一些特殊情况下无法单独的使用tp的上传功能, 或者需要做一些比较酷炫的上传效果,这里就需要用到框架了. 我在这里使用的是uploadify上传插件. 首先需 ...

  10. php的定界符<<<eof的问题

    在php的编程过程中难免会遇到输出大段的html和javascript脚本的情况,可都放在具体的地方的时候,路由不好处理,而且比较浪费时间 如果按照传统的输出方法,按照字符串输出的话,需要大量的转义字 ...