java中的文件操作总结(干货)

网友投稿 185 2023-06-14


java中的文件操作总结(干货)

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.mFOujXnTout.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

System.out.print("---");

}

for(int i = 0;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();

}

}

}

System.out.print("---");

}

for(int i = 0;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();

}

}

}

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();

}

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微服务系列二:你是否真的需要采用微服务架构
下一篇:Java 中String StringBuilder 与 StringBuffer详解及用法实例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~