File类简介
package com.file;
import java.io.File;
import java.io.IOException;
/** * Created by elijahliu on 2017/2/10. */public class filetest {
public static void main(String[] args) {
File file = new File("hello.txt");
//是否存在 if (file.exists()) {
//文件 System.out.println(file.isFile());
//路径(文件夹) System.out.println(file.isDirectory());
File nameto = new File("new Hello.txt");
file.renameTo(nameto);
//这里就是重命名文件的操作,直接新建一个file对象然后使用renameTo方法可以重命名文件 }
else {
System.out.println("文件不存在");
try {
file.createNewFile();
System.out.println("文件已被创建");
}
catch (IOException e) {
System.out.println("文件无法创建");
}
}
if (file.exists()) {
//删除文件 file.delete();
System.out.println("删除文件");
}
else {
}
}
}
文件夹操作
package com.file;
import java.io.File;
/** * Created by elijahliu on 2017/2/11. */public class HelloFolder {
public static void main(String[] args) {
File folder = new File("my new folder");
if (folder.mkdir()) {
//创建文件夹 判断是否成功 System.out.println("文件夹创建完成");
File newfolder = new File("myn new foleder - new");
folder.renameTo(newfolder);
//这里重命名了文件夹 文件夹的重命名是可以单独更改一级的文件夹名的 而这一级下面的文件夹不变 保存目录结构 if (folder.delete()) {
System.out.print("done");
//这里的删除只能删除空文件夹,如果文件夹中有东西,那么则不能删除,不问三七二十一直接删除一个非空文件夹是非常不负责任的 }
else {
System.out.println("fail");
}
}
else{
if (folder.exists()) {
System.out.println("文件夹已经存在不用创建");
}
else{
System.out.println("文件夹创建失败");
}
}
File folders = new File("my new folder/one/two/three/main");
folders.mkdirs();
//在java中用mkdir只能创建一个,mkdirs可以创建多级目录 }
}
文件属性设置
package com.file;
import java.io.File;
/** * Created by elijahliu on 2017/2/11. */public class SetFileProperty {
public static void main(String[] args){
File file = new File("test.file");
if (file.exists()){
file.setWritable(true);
//可写 file.setReadable(true);
//可读 file.setReadOnly();
//只读 }
}
}
遍历文件夹
public void printFiles(File dir,int tab) {
//tab为不同目录结构的缩进量 if (dir.isDirectory()) {
File next[] = dir.listFiles();
//判断如果是目录 则返回目录所有的文件名数组用于遍历文件夹 for (int i = 0;
i<next.length;
i++) {
//层次缩进输出 System.out.print("---");
}
for(int i = 0;
i<next.length;
i++) {
//这里用了递归获取目录结构 System.out.println(next[i].getName());
if (next[i].isFile()) {
printFiles(next[i],++tab);
}
}
}
}
文件简单读写
package com.file;
import java.io.*;
/** * Created by elijahliu on 2017/2/11. */public class ReadFile {
public static void main(String[] args) {
File file = new File("new Hello.txt");
if(file.exists()){
System.err.print("exsit");
try (FileInputStream fis = new FileInputStream(file)) {
//文件输入流 这是字节流 InputStreamReader isr = new InputStreamReader(fis,"UTF-8");
//inputstreamReader是一个字节流,将字节流和字符流转化的时候,就需要制定一个编码方式,不然就会乱码 BufferedReader br = new BufferedReader(isr);
//字符缓冲区 String line;
while((line = br.readLine())!=null){
//这里将缓冲区里的内容如果非空就读出来打印 System.out.println(line);
}
br.close();
//最后将各个线程关闭 isr.close();
fis.close();
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
}
File newfile = new File("newtext.txt");
try {
FileOutputStream fos = new FileOutputStream(newfile);
//这里如果文件不存在会自动创建文件 OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");
//和读取一样这里是转化的是字节和字符流 BufferedWriter bw = new BufferedWriter(osw);
//这里是写入缓冲区 bw.write("厉害了我的哥");
//写入字符串 bw.close();
//和上面一样 这里后打开的先关闭 先打开的后关闭 osw.close();
fos.close();
System.out.println("done");
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。