1.1java.io.File

File用于表示文件系统中的一个文件或目录
通过File可以:

1:访问该文件或目录的属性信息(名字,大小,修改时间等)

file.getName();获取文件名file.length();获取文件长度
file.lastModified();获取文件最后一次修改时间
file.canWrite();是否可写
file.canRead();是否可读
file.isHidden();是否隐藏

2:操作文件或目录(创建,删除)

使用File创建一个新文件
File file = new File("text.txt");//在当前目录下创建文件:test.txt不写路径默认就是当前目录
file.exists(); boolean exists()//判断当前File表示的文件或目录是否已经存在
使用File删除一个文件
File file = new File("text.txt");
file.delete();//如果有这个文件去删除,应当加exists()判断
使用File创建一个目录mkdir();可以将全部路径写进入创建多级目录。
使用File删除一个目录:
使用File的delete方法删除目录时要求该目录必须是一个空目录
if(dir.exists()){
dir.delete();//删除空的目录方法
}
使用File获取一个目录中的所有子项:
获取当前目录中的所有子项File dir = new File(".");
判断File表示的是文件还是目录boolean isFile();boolean isDirectory()
File[] listFiles()获取当前File表示的目录中的所有子项返回的数组中每个元素为该目录中的一个子项。

3:访问一个目录的子项但是不能读取文件数据。

File提供了一个重载的listFiles方法,允许传入一个过滤器,该方法只会将File表示的目录中满足该过滤器要求的子项返回。
FileFilter filter = new FileFilter(){//过滤条件
/**
* 定义过滤条件,当认为参数file满足
* 过滤要求时accept方法应当返回true
*/
public boolean accept(File file){
return file.isFile();
}

};

1.2java.io.RandomAccessFile专门用来读写文件RAF读写文件是基于文件指针进行的,即:RAF总是在文件指针指向的文件位置进行读写字节。并且读写后指针会自动后移到下一个字节位置。

*RandomAccessFile raf= new RandomAccessFile("raf.dat","rw");
向raf.dat文件中写出字节;
创建RAF时需要指定操作权限。
权限常用的有:
r:只读模式,对文件数据仅读取
rw:读写模式
若RAF操作的文件不存在,那么RAF是rw模式时可以自动将该文件创建出来,但是若为r模式,会抛出文件不存在的异常。
void write(int d)向文件中写入1个字节,写的是给定的int值对应的2进制的低八位。
*RandomAccessFile raf= new RandomAccessFile("raf.dat","r"); 从raf.dat文件中读取一个字节
int read()读取1个字节,并以int形式返回。若返回值为-1,则表示读取到了文件末尾

int read(byte[] data) 一次性从文件中读取给定字节数组总长度的字节量,并存入到该数组中,返回值为实际读取到的字节量,若返回值为-1,则表示本次没有读取到任何字节(文件末尾读取)
void write(byte[] date)将给定的字节数组中所有字节一次性写出
void write(byte[] data,int offset,int len) 将给定字节数组从下标offset处开始的连续len个字节一次性写出

JAVA基础——文件File简单实用的更多相关文章

  1. java基础文件,File类

    此文参考自"Java SE程序设计" 编著: 青岛东合信息技术有限公司 算是做笔记,以后想看可以翻阅,顺便分享出来大家可以参照.如有侵权,请联系本人删除 文件 文件是相关记录或放在 ...

  2. Java基础之File类的使用

    Java基础之File类的使用 1.File类的构造方法和常用方法 2.对File中listFile(FileNameFilter name)学习 3.与File文件类相关的实现 File类的构造方法 ...

  3. java IO文件操作简单基础入门例子,IO流其实没那么难

    IO是JAVASE中非常重要的一块,是面向对象的完美体现,深入学习IO,你将可以领略到很多面向对象的思想.今天整理了一份适合初学者学习的简单例子,让大家可以更深刻的理解IO流的具体操作. 1.文件拷贝 ...

  4. 黑马程序员——【Java基础】——File类、Properties集合、IO包中的其他类

    ---------- android培训.java培训.期待与您交流! ---------- 一.File类 (一)概述 1.File类:文件和目录路径名的抽象表现形式 2.作用: (1)用来将文件或 ...

  5. java基础(22):File、递归

    1. File 1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下次程序 ...

  6. 黑马程序员——JAVA基础之File类,递归,打印流,合并切割流

    ------- android培训.java培训.期待与您交流! ---------- File类 用来将文件或者文件夹封装成对象 方便对文件与文件夹的属性信息进行操作. File对象可以作为参数传递 ...

  7. java基础42 File类的构造函数及其方法

    本文知识点(目录): 1.IO流(Input Output)    2.IO流技术的运用场景    3.File类的构造函数(方法)    4.File类的一些常用方法    5.实例(解析File类 ...

  8. java基础(1-50)-------->超级简单,不信你不会!!!

    1:java中的保留字:const&goto; 2:&和&&都可以做逻辑运算符,即运算符两边的表达式都为true,结果才为true,一方为false,则结果为false ...

  9. JAVA基础之File类

    个人理解: File是个文件类,可以用其增加.删除.查找某种类型的文件或者文件夹,同时根据其成员变量的特点可以综合利用,避免出现跨系统的时候出现错误,并且查找时最好输入绝对路径,以免出现不存在的文件. ...

随机推荐

  1. HDU 5475An easy problem 离线set/线段树

    An easy problem Time Limit: 8000/5000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  2. YTU 2630: E2 驾驭const

    2630: E2 驾驭const 时间限制: 1 Sec  内存限制: 128 MB 提交: 673  解决: 491 题目描述 引入了const关键词,用于指定"常"对象及&qu ...

  3. 10.6 Graph Test

    一套图论的练习题,各个方面都有挺好的 第一第二题有一定难度(来源POI),第三第四题比较水 但我并没考好 T1 特工 szp T2 洞穴 zaw T3 最短路 line T4 最小差异值 dvalue

  4. ODB(C++ ORM)用Mingw的完整编译过程

    用mingw官方的GCC4.7.2编译libodb后,并用odb compiler对hello示例生成odb的"包裹"代码,编译链接总是不能通过,下面是编译example/hell ...

  5. gitlab gerrit jenkins CI/CD环境集成

    http://blog.csdn.net/williamwanglei/article/details/38498465

  6. 15.extjs tabPanel的用法

    转自:https://blog.csdn.net/mezhaha/article/details/78878894 本文导读:TabPanel继承于Ext.Panel,Ext.TabPanel就是有选 ...

  7. emma中文显示乱码问题解决(ubutnu)

    vim -/.emma/emmarc 找到  db_encoding=latin1 改为  db_encoding=utf8  然后重新运行emma,此时发现还是乱码,不要着急,在执行所有的sql语句 ...

  8. bzoj 4807: 車【组合数+高精+线性筛】

    设n>m,答案是\( C_n^m \),然后高精就行了 具体做法是先把指数筛出来,然后对每个数因数分解,记录质因子个数,最后被除数减去除数质因子个数,把剩下的质因子乘起来就行了 #include ...

  9. ACM博弈论总结

    一.Bash博弈 1.问题模型:只有一堆n个物品,两人轮流从这堆物品中取物,最多取m个,最后取光者胜. 2.解决思路:当n=m+1时,由于一次最多取m个,无论先取者拿走多少个,后取者都能一次拿走剩余的 ...

  10. GIT学习之路最终日 标签管理+总结

    本文参考廖雪峰老师的博客进行总结,完整学习请转廖雪峰博客 6.1 创建标签 命令git tag (name)用于新建一个标签,默认为HEAD,也可以指定一个commit id: git tag -a ...