| File |
| 构造函数 |
| File(String path) |
|
| File(String directoryPath, String filename) |
|
| File(File directory, String filename) |
|
| File(URI uri) |
- path为空抛出NullPointerException
|
|
| 静态变量 |
|
static String pathSeparator
static char pathSeparatorChar
|
路径分隔符 |
|
static String separator
static char separatorChar
|
文件分割符 |
|
| 实例方法 |
| 判断 |
| boolean canExecute() |
存在且运行 |
| boolean canRead() |
|
| boolean canWrite() |
|
| boolean exists() |
|
| boolean isAbsolute() |
path是否是绝对路径 |
| boolean isDirectory() |
|
| boolean isFile() |
|
| boolean isHidden() |
|
| |
|
| |
|
| |
|
|
| 获取 |
| String getAbsolutePath() |
绝对路径 |
| String getCanonicalPath() throws IOException |
标准路径 |
| long getFreeSpace() |
文件系统剩余的容量
单位: 字节(byte)
|
| long getTotalSpace() |
|
| long getUsedSpace() |
|
| String getName() |
文件名 |
| String getParent() |
|
| String getPath() |
|
| long lastModified() |
1970/1/1GMT到最后更改直接的毫秒 |
| long length() |
文件大小
单位: byte
|
|
String[] list()
String[] list(FilenameFilter filter)
|
返回文件夹内的文件 |
|
File[] list()
File[] list(FilenameFilter filter)
|
|
| |
|
|
| 设置 |
| boolean setExecutable(boolean flag, boolean owner) |
-
-
- owner: true 只有onwer
false All
- 成功返回true
|
| boolean setReadable(boolean flag, boolean owner) |
|
| boolean setWritable(boolean flag, boolean owner) |
|
| boolean setLastModified(long t) |
|
| URI toURI() |
返回 file:// 开头的URI |
| |
|
| |
|
| |
|
|
|
boolean createNewFile()
throws IOException
|
创建新的空文件, 成功返回true |
| boolean delete() |
删除文件。成功返回true |
| boolean mkdir() |
以此文件名创建新文件夹
|
| boolean mkdirs() |
以此文件名创建新文件夹
|
| boolean renameTo(File newName) |
成功返回true |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| 字符流 |
| 简介 |
- 两种流, 字符流(charactor stream), 字节流(byte stream)
|
| 字符流类关系图 |
继承关系图
| |
|
BufferdReader |
|
| |
Reader -> |
|
|
| |
|
InputStreamReader -> |
FileReader |
| Object -> |
|
|
|
| |
|
BufferdWriter |
|
| |
Writer -> |
OutputStreamWriter -> |
FileWriter |
| |
|
PrintWriter |
|
|
| Writer |
| |
这是抽象类
|
| 构造函数 |
| Writer() |
|
| Writer(Object obj) |
|
|
| 实例函数 |
| append |
| Writer append(char c) throws IOException |
|
| Writer append(CharSequence cs) throws IOException |
|
| Writer append(CharSequence cs, int strat, int end) throws IOException |
写入cs里指定范围的部分到流
|
|
| write |
| void write(int c) throws IOException |
|
| void write(char buffer[]) throws IOException |
|
|
abstract void write(char buffer[], int index, int size)
throws IOExceptio
|
- index写入流起始位置(流的)
- size写入的字符数
|
| void write(String s) throws IOException |
|
| void write(String s, int index, int size) throws IOException |
|
|
|
abstract void close()
throws IOException
|
|
|
abstract void flush()
throws IOException
|
写入终端 |
| |
|
| |
|
| |
|
|
|
| OutputStreamWriter |
| 简介 |
Object -> Writer -> OutputStreamWriter
字符流转换为字节流输出到终端
|
| 构造函数 |
| OutputStreamWriter(OutputStream os) |
不指定encoding则使用系统默认 |
| OutputStreamWriter(OutputStream os, String encoding) |
|
|
| 实例方法 |
|
| |
|
|
| FileWriter |
| 简介 |
Object -> Writer -> OutputStreamWriter -> FileWriter
向文件输出
|
| 构造函数 |
| FileWriter(String filepath) throws IOException |
|
| FileWriter(String filepath, boolean append) throws IOException |
|
| FileWriter(File fileObj) throws IOException |
|
| FIleWriter(File fileObj, boolean append) throws IOException |
append: true则在末尾添加, false则删除原内容 |
|
| |
没有自己的函数, 全是继承的 |
| |
|
| |
|
| |
|
|
| |
|
| Reader |
|
|
这是抽象类 |
| 构造函数 |
| Reader() |
|
| Reader(Object obj) |
|
|
| 实力函数 |
| abstract void close() throws IOException |
关闭读取流, 再尝试读取则抛出IOException |
| void mark(int numChars) throws IOException |
??? |
| void reset() throws IOExceptio |
|
| int skip(long numChars) throws IOException |
返回实际跳过的数量 |
| read |
| int read() throws IOException |
读取的是一个字符 |
| int read(char buffer[]) throws IOException |
|
| abstract int read(char buffer[], int offset, int numChars) throws IOException |
|
|
| 判断 |
| boolean markSupported() |
此流是否支持mark()/reset() |
| boolean ready() throws IOException |
read不在读取返回true |
|
| |
|
| |
|
| |
|
|
|
| InputStreamReader |
| 简介 |
Object -> Reader -> InputStreamReader
字节流读取为字符流
|
| 构造函数 |
| InputStreamReader(InputStream is) |
|
| InputSreamReader(IntputSream is, String encoding) |
|
|
| 实例函数 |
|
|
| FileReader |
| 简介 |
Object -> Reader -> InputStreamReader -> FileReader |
| 构造函数 |
| FileReader(String filepath) throws FileNotFoundException |
|
| FileReader(File fileObj) throws FileNotFoundException |
|
|
| |
没有自己的函数, 全是继承的 |
|
| |
|
| 带buffer字符流 |
| 简介 |
写入和读取都存到buffer里
好处: 减少直接写入和读取的次数, 提高performance
|
| BufferedWriter |
| 简介 |
Objcet -> Writer -> BufferedWriter |
| 构造函数 |
|
BuffferedWriter(Writer w)
|
|
| BufferedWriter(Writer w, int bufSize) |
|
|
| 实例函数 |
|
void newLine() throws IOException()
|
写入一个换行(另起一行) |
|
|
| BufferedReader |
| 简介 |
Object -> Reader -> BufferedReader |
| 构造函数 |
| BufferedReader(Reader r) |
|
| BufferedReader(Reader r, int bufSize) |
|
|
| 实例函数 |
| String readLine() throws IOException |
|
|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| PrintWriter |
| |
Object -> Writer -> PrintWriter |
| 构造函数 |
| PrintWriter(File fileObj) throws FileNotFoundException |
|
| PrintWriter(OutputStream os) |
|
| PrintWriter(OutputStream os, boolean flushOnNewline) |
|
| PrintWriter(Writer writer) |
|
| PrintWriter(Writer writer, boolean flushOnNewline) |
|
|
| 实例方法 |
| print |
| void pirnt(boolean b) |
|
| void print(char c) |
|
| void print(char cs[]) |
|
| void print(double d) |
|
| void print(float f) |
|
| void print(int i) |
|
| void print(long l) |
|
| void print(Object o) |
|
| void print(String s) |
|
| |
|
|
| println |
| void println() |
|
| 其他9个和print一样 |
|
|
| printf |
|
void printf(String s, Object... args)
void format(String s, Object... args)
|
|
|
void printf(Locale l, String s, Object... args)
void format(Locale l, String s, Object... args)
|
|
| |
|
| |
|
|
|
| |
|
| 字节流 |
| 字节流类关系图 |
继承关系图
| |
|
FileInputStream |
|
| |
InputStream -> |
|
BufferedInputStream |
| |
|
FilterInputStream -> |
DataInputStream |
| |
|
|
|
| Object -> |
|
|
|
| |
|
FileOutputStream |
|
| |
OutputStream -> |
|
BufferedOutputStream |
| |
|
FilterOutputStream -> |
DataOutputStream |
| |
|
|
PrintStream |
|
| OutputStream |
这是抽象类
| 简介 |
Object -> OutputStream |
| 构造函数 |
OutoutStream() |
| 实例方法 |
| void close() throws IOException |
|
| void flush() throws IOException |
|
| write |
| abstract void write(int i) throws IOException |
|
| void write(byte buffer[]) throws IOException |
|
| void write(byte buffer[], int index int size) throws IOException |
把size数量的buffer字符写入index处 |
|
|
|
| FileOutputStream |
| 简介 |
Object -> OutputStream -> FileOutputStream |
| 构造函数 |
| FileOutputStream(String filepath) throws FileNotFoundException |
|
| FIleOutputStream(String filepath, boolean append) throws FileNotFoundException |
|
| FileOutputStream(File fileObj) throws FileNotFoundException |
|
| FileOutputStream(File fileObj, boolean append) throws FileNotFoundException |
|
|
|
| FilterOutpuStream |
| 简介 |
Object -> OutputStream -> FilterOutputStream
用filter过滤后再输出
|
| 构造函数 |
| FilterOutputStream(OutputStream os) |
|
| |
|
|
|
| BufferedOutputStream |
| 简介 |
Object -> OutputStream -> FilterOutputStream -> BufferedOutputStream |
| 构造函数 |
| BufferedOutputStream(OutputStream os) |
|
| BufferedOutputStream(OutputStream os, int bufSize) |
|
|
|
| DataOutputStream |
| 简介 |
Object -> OutputStream -> FilterOutputStream -> DataOutputStream
能把基本数据类型直接写入的
|
| 构造函数 |
| DataOutputStream(OutputStream os) |
|
| |
|
|
| 实例函数 |
| write |
| void write(int i) throws IOException |
|
| void witer(byte buffer[]) throws IOException |
|
| void write(byte buffer[], int index, int size) throws IOException |
|
| …………………分割线……………… |
|
| void writeBoolean(boolean b) throws IOException |
|
|
void writeByte(int i) throws IOException
void writeChar(int i) throws IOException
|
|
|
void writeBytes(Strings) throws IOException
void writeChars(String s) throws IOException
|
|
| void writeDouble(double d) throws IOException |
|
| void writeFloat(float f) throws IOException |
|
| void writeInt(int i) throws IOException |
|
| void writeLong(long l) throws IOException |
|
| void writeShort(short s) throws IOException |
|
| void writeUTF(String s) throws IOException |
把字符串转换从Unicode转为UTF-8再写入 |
| |
|
|
| |
|
|
|
| PrintStream |
| 简介 |
Object -> OutputStream -> FilterOutputStream -> PrintStream |
| 构造函数 |
| PrintStream(File fileObj) throws FileNotFoundException |
|
| PrintStream(String filepath) throws FileNotFoundException |
|
| PrintStream(OutputStream os) |
|
| PrintStream(OutputStream os, boolean flushOnNewLine) |
|
|
| 实例方法 |
| printf |
|
printf(String format, Object... args)
format(String format, Object... args)
|
|
|
printf(Locale l, String format, Object... args)
format(Locale l, String format, Object... args)
|
|
|
| |
|
|
|
| |
|
| InputStream |
这是抽象类
| 构造函数 |
InputStream() |
| 实例方法 |
| int available() throws IOException |
返回现在读取可用的字节数byte |
| void close() throws IOexception |
|
| void mark(int numBytes) |
|
| void reset() throws IOException |
|
| int skip(long numBytes) throws IOException |
跳过指定byte数, 返回实际跳过的byte数 |
| boolean markSupported() |
是否支持mark()/reset() |
| read |
| int read() throws IOException |
读1byte |
| int read(byte buffer[]) throws IOException |
读buffer.length长度 |
|
int read(byte buffer[], int offset, int numBytes)
throws IOException
|
- 返回实际读取数
- offset: 存入的起始位置
- numBytes: 尝试读取数
|
|
| |
|
|
|
| FileInputStream |
| 简介 |
Object -> InputStream -> FileInputStream |
| 构造函数 |
| FileInputStream(String filepath) throws FileNotFountException |
|
| FileInputStream(File fileObj) throws FileNotFoundException |
|
|
|
| FilterInputStream |
| 简介 |
Object -> InputStream -> FilterInputStream |
| 构造函数 |
| FilterInputStream(InputStream is) |
|
| |
|
|
|
| BufferedInputStream |
| 简介 |
Object -> InputStream -> FilterInputStream -> BufferedInputStream |
| 构造函数 |
| BufferedInputStream(InputStream is) |
|
| BufferedInputStream(InputStream is, int bufSize) |
|
|
|
| DataInputStream |
| 简介 |
Object -> InputStream -> FilterInputStream -> DataInputStream |
| 构造函数 |
| DataInputStream(InputStream is) |
|
|
| 实例函数 |
| read |
|
| int skipBytes(int n) throws IOException |
跳过n字节, 返回实际跳过的 |
|
|
| 随机接入文件 |
| 简介 |
可以在文件内随意读取写入
Object -> RandomAccessFile
https://docs.oracle.com/javase/7/docs/api/java/io/RandomAccessFile.html
|
| 构造函数 |
|
RandomAccessFile(String filepath, String mode) throws FileNotFoundException
RandomAccessFile(File fileobj, String mode) throws FileNotFoundException
|
|
|
| 实例方法 |
| void close() throws IOException |
|
| long getFilePointer() throws IOException |
|
| long length() throws IOException |
返回文件的byte数 |
| read |
| int read() throws IOException |
读取一字节 |
| int read(byte buffer[], int index, int size) throws IOException |
返回实际读取的字节数 |
| int read(byte buffer[]) throws IOException |
|
|
| void seek(long n) throws IOException |
指针指向开头起n的位置 |
| void setLength(long size) throws IOException |
|
| int skipBytes(int n) throws IOException |
|
| |
|
|
| |
|
| StreamTokenizer |
| 构造函数 |
| StreamTokenizer(Reader r) |
|
|
| 实例函数 |
| void commentChar(int ch) |
指定ch是单行注释的开始 |
| void eollsSignificant(boolean flag) |
true: 行末作为token
flase: 作为空白
|
| int lineno() |
|
| void lowerCaseMode(boolean flag) |
true: 把文字自动转为小写 |
| int nextToken() throws IOException |
数字返回TT_NUMBER
单词返回TT_WORD
其他则返回相同的字符
|
| ordinaryChar |
| void ordinaryChar(int ch) |
|
| void ordinaryChar(int c1, int c2) |
|
|
| void parseNumbers() |
|
| void pushBacK() |
|
| void quoteChar(int ch) |
|
| void resetSyntax() |
|
| void slashSlashComments(boolean flag) |
|
| void slashStraComments(boolean flag) |
|
| String toString() |
|
| void whiteSpaceChars(int c1, int c2) |
|
| void wordChars(int c1, int c2) |
|
|
| |
|