·java中文件读写操作基于流这个概念
流各种方法存在于java.io包中
文件是数据流中最常用的
一.文件的相关方法归类:
创建:File 对象名=new File("文件名");
读取:·File 对象名=new File("文件路径");
·File 对象名=new File(父路径,子路径);
以下方法均以 对象名. 引用 //基础方法
1.getName() 返回值:String //获取文件名
2.canRead() boolean //文件是否可读
3.canWrite() boolean //文件是否可被写入
4.exits()或isFile() boolean //判断文件是否存在
5.length() long //获取文件的长度(以字节为单位)
6.getAbsolutePath() String //获取文件的绝对路径
7.getParent() String //获取文件的父路径
8.isDirectory() boolean //判断文件是否为一个目录
9.isHidden() boolean //判断文件是否为隐藏文件
10.lastModified() long //获取文件最后修改时间
11.debate() //文件删除
二.相关类介绍(输入输出流)
//均以文件对象新建自身对象对文件进行操作,操作完后均要有关闭流的操作,即:对象名.close()
1.FileInputStream与FileOutputStream类
前者以 write()方法写入内容到文件
后者以 read()方法从文件中读取信息
2.FileReader与FileWrite类(对前面两种类的完善)
方法同上消除了很多弊端 //一二两种创建对象以文件对象创建
3.相对应的以上有两种带缓存区域的输入输出流
BufferedInputStream、BufferedOutputStream
BufferedReader、BufferedWrite
使用时先定义相对应的前者对象在创建相应的Buffered对象
例:FileInputStream a=new FileInputStream("文件名");
BufferedInputStream b=new BufferedInputStream(a);
BufferedReader、BufferedWrite相关方法: //创建对象时是创建FileReader、FileWrite对象同上
read() //读取单个字符
readLine() //读取一个文本行 如果未读到则返回null
write() //写入内容 ·write(String,int,int) 写入字符串某一部分
flush() //刷新该流缓存
newLine() //写入一个分隔行
此处举一个明文加密文的写入文件的实例有关于文件写入读取的实例
import java.io.*;
public class Example {public static void main(String[] args) {char a[] = "今天10点出发".toCharArray();int n = 0;try {File out = new File("word.txt");for (int i = 0; i < a.length; i++) {a[i] = (char) (a[i] ^ 'R');}FileWriter fw = new FileWriter(out);fw.write(a, 0, a.length);fw.close();FileReader fr = new FileReader(out);char tom[] = new char[10];System.out.println("加密后:");while ((n = fr.read(tom, 0, 10)) != -1) //把fr读到tom中去 从0到10位。 {String s = new String(tom, 0, n);System.out.println(s);}fr.close();fr = new FileReader(out);System.out.println("明文:");while ((n = fr.read(tom, 0, 10)) != -1) {for (int j = 0; j < n; j++) {tom[j] = (char) (tom[j] ^ 'R');}String str = new String(tom, 0, n);System.out.println(str);}fr.close();} catch (Exception e) {e.printStackTrace();}}}