最近C++也学到了IO流,这两个差距还蛮大的
首先是Java.io包中的重要的五个类和三个接口
File 数据源
InputStream 字节输入流
OutputStream 字节输入流
Reader 字符输入流
Writer 字符输出流
Closeable 关闭流接口
Flushable 刷新流接口
Serializable 序列化接口
File
文件路径的表示
public class PathTest {
public static void main(String[] args) {
String path="E:/mycode";
}
}
File对象的构建
import java.io.File;
public class FileTest {
public static void main(String[] args) {
String path="E:/mycode";
File a=new File(path);
System.out.println(a.length());
}
}
File中重要的方法
路径分隔符 pathSeparator separator
构造器 File("路径名称")
文件名,路径名
getName() 返回File名称
getPath() 返回路径
getAbsolutePath() 返回绝对路径
getParent() 返回父路径
exists() 判断File对象是否存在
isFile() 存在时是文件
isDirectory() 存在时是文件夹
length() 返回文件长度
createNewFile() 创建新文件
mkdir() 上一级目录必须存在,创建文件夹
mkdirs() 上级目录可不存在,不存在创建一个
list() 下级文件名称
listFiles() 下级文件File对象
listRoots() 根路径,所有盘符
delete() 删除文件
具体应用
import java.io.File;
public class FileTest {
public static void main(String[] args) {
String path="E:/mycode/Welcom.class";
File a=new File(path);
System.out.println(a.getPath());
System.out.println(a.getName());
System.out.println(a.getAbsolutePath());
System.out.println(a.getParent());
System.out.println(a.exists());
System.out.println(a.isFile());
System.out.println(a.isDirectory());
System.out.println(a.length());
}
}
输出
E:\mycode\Welcom.class
Welcom.class
E:\mycode\Welcom.class
E:\mycode
true
true
false
410