黑马程序员_File文件详解
//以下是毕老师讲解的总结
File类是对获取和操作文件的类,通常有以下三种构造方法来创作file对象
1、 File(String filename);
2、 File(String directoryPath,String filename);
3、 File(File f,String filename);
File类的常见方法。
1,创建。
boolean createNewFile():创建文件。
boolean mkdir():创建文件夹。
boolean mkdirs():创建多级目录。
2,删除。
boolean delete():
deleteOnExit();
3,判断。
isAbsolute():是否是绝对路径。
exists():是否存在。
isDirectory():是否是文件夹。
isFile():是否为文件。
4,获取。
long length():文件大小。
getName() // 文件名
getParent() // 父目录, 如果封装File对象时,不指定路径, 返回 null
getPath() //路径 封装什么路径就是什么路径
getAbsolutePath() 绝对路径。 //无论封装什么路径,获取的都是绝对路径。
String[] list():获取指定目录下当前的文件夹和文件名称。
File[] listFiles():获取指定目录下当前的文件夹和文件对象。
static File[] listRoots():获取本机有效盘符。
String[] list(FilenameFilter ):获取指定过滤器过滤后的文件或者文件夹名称
File[] listFiles(FileFilter ):获取指定过滤器过滤后的文件或者文件夹对象
5,renameTo:对文件进行改名。还可以剪切。
6,compareTo(); //File实现了Compareable接口。 文件可以排序。
从文件中读取数据
FileinputStream istream=new FileInputStream(File file);
输出文件
FileoutputStream类
这个类提供了基本的文件写入能力。通常提供两个构建方法
FileoutputStream(String name)
FileOutputStream(File file);
Write方法可以提供到字节定稿到输出流到达的目的地
下面的程序是用户输入字符然后把字符存入到文件 line中
import java.io.*;
public class Example10_5
{
public static void main(String args[])
{
int b;
byte buffer[]=new byte[100];
try{System.out.println("输入一行文本,并存入磁盘:");
b=System.in.read(buffer);
b="dsfadsf";
FileOutputStream writefile=new FileOutputStream("line.txt");
writefile.write(buffer,0,b);
}catch(IOException e)
{
System.out.println("Error"+e);
}
}
}
BufferedReader类可以实现FileReader行读取然后写入文件
Write(String s,int off,int len)把字符串s从s处开始写len个字符