Java之file操作
File类既可以表示文件,也可以表示为文件夹
文件的创建、删除、重命名
1、文件的创建
File file=new File("new Hello.txt");//当前工程目录下
file.createNewFile();
File file=new File("bin/hello.txt");//当前工程目录下的bin文件夹下
file.createNewFile();
File file=new File("../hello.txt");//当前工程目录的上一级目录
file.createNewFile();
File file=new File("../../hello.txt");//上一级的上一级目录
file.createNewFile();
2、文件的删除
file.delete();
3、文件的重命名
(1)重命名文件
File file=new File("Hello.txt");
File nameto=new File("new Hello.txt");
file.renameTo(nameto);
(2)复制文件到指定目录(文件夹结构必须处于同一个分区,文件处于不同的分区,需要使用文件的拷贝,而不是文件的重命名)
File nameto=new File("new Hello.txt");
File nameto=new File("src/new Hello.txt");
file.renameTo(nameto);//把文件从根目录拷贝到根目录下src目录下
文件夹的创建、删除、重命名
文件夹的创建
创建单一文件夹
File folder=new File("my new folder");
folder.mkdir();//返回的是一个bool值
创建整个文件夹目录
File folder=new File("my new folder/one/two/three/main");
folder.mkdirs();
文件夹的重命名
File folder=new File("my new folder");
File newfolder=new File("my new folder-new");
folder.renameTo(newfolder);
文件夹的删除
File newfolder=new File("my new folder-new");
newfolder.delete();//删除时,当前文件夹必须是空的,否则不能被删除,删除失败,和文件的删除不同
文件属性的读取
- package com.jingchenyong.io;
- import java.io.File;
- public class FileTest1 {
- public static void main(String[] args) {
- File file=new File("text.txt");
- //判断文件是否存在
- System.out.println("判断文件是否存在"+file.exists());
- //读取文件名称
- System.out.println("读取文件名称"+file.getName());
- //读取文件路径(相对路径)
- System.out.println("读取文件路径"+file.getPath());
- //读取文件绝对路径
- System.out.println("读取文件绝对路径"+file.getAbsolutePath());
- //读取文件的父级路径
- System.out.println("读取文件的父级路径"+new File(file.getAbsolutePath()).getParent());
- //读取文件的大小
- System.out.println("读取文件的大小"+file.length()+"byte");//字节
- //判断文件是否被隐藏
- System.out.println("判断文件是否被隐藏"+file.isHidden());
- //判断文件是否可读
- System.out.println("判断文件是否可读"+file.canRead());
- //判断文件是否可写
- System.out.println("判断文件是否可写"+file.canWrite());
- //判断文件是否为文件夹
- System.out.println("判断文件是否为文件夹"+file.isDirectory());
- }
- }
文件属性的设置
file.setWritable(true);
//将文件设定为可读
file.setReadable(true);
//将文件设定为只读
file.setReadOnly();
遍历文件夹
- package com.jingchenyong.io;
- import java.io.File;
- public class FileTest2 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- printFiles(new File("C:/Users/jingchenyong/Desktop/desktop"),1);
- //绝对路径
- //printFiles(new File("H:/Users/jingchenyong/Workspaces/MyEclipse 8.6/Test"));
- //相对路径
- //printFiles(new File("../Test"),1);
- }
- public static void printFiles(File dir,int tab){
- if(dir.isDirectory()){
- File next[]=dir.listFiles();//返回的file对象的数组的数组
- for(int i=0;i<next.length;i++){
- for(int j=0;j<tab;j++){
- System.out.print("|--");
- }
- System.out.println(next[i].getName());
- if(next[i].isDirectory()){
- printFiles(next[i],tab+1);
- }
- }
- }
- }
- }
文件的简单读写
- package com.jingchenyong.io;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.io.UnsupportedEncodingException;
- public class FileTest3 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- //读
- File file=new File("text.txt");//位于工程目录下
- if(file.exists()){
- System.err.println("exist");
- try {
- FileInputStream fis=new FileInputStream(file);//获取文件的输入流(字节流)
- InputStreamReader isr=new InputStreamReader(fis,"utf-8");//(字符流)
- 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) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- //写
- try {
- File newfile=new File("next.txt");
- FileOutputStream fos=new FileOutputStream(newfile);
- OutputStreamWriter osw=new OutputStreamWriter(fos,"utf-8");
- BufferedWriter bw=new BufferedWriter(osw);
- //覆盖写入
- bw.write("jingchenyong1\r\n");
- bw.write("jingchenyong2\r\n");
- bw.write("jingchenyong3\r\n");
- bw.write("jingchenyong4\r\n");
- bw.write("jingchenyong5\r\n");
- bw.close();
- osw.close();
- fos.close();
- } catch (FileNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
Java之file操作的更多相关文章
- Java文件File操作一:文件的创建和删除
一.简述 File 文件类,主要对文件进行相关操作.常用的File操作有:文件(夹)的创建.文件(夹)的删除,文件的读入和下载(复制)等: 二.文件(夹)的创建和删除 1.创建过程 实例: //cre ...
- Java文件IO操作应该抛弃File拥抱Paths和Files
Java7中文件IO发生了很大的变化,专门引入了很多新的类: import java.nio.file.DirectoryStream;import java.nio.file.FileSystem; ...
- Java的IO操作---File类
目标 1)掌握File类作用 2)可以使用file类中方法对文件进行读写操作. File类 唯一与文件有关的类.使用file类可进行创建或删除操作,要想使用File类,首先观察File类的构造方法. ...
- JAVA实现File类中的遍历操作并输出内容
package shb.java.testIo; import java.io.BufferedReader; import java.io.BufferedWriter; import java.i ...
- Java文件IO操作应该抛弃File拥抱Path和Files
Java7中文件IO发生了很大的变化,专门引入了很多新的类: import java.nio.file.DirectoryStream;import java.nio.file.FileSystem; ...
- java.io.File类操作
一.java.io.File类 String path="E:/222/aaa";//路径 String path1="aaa.txt"; File file= ...
- 【java】文件操作java.io.File
package 文件操作; import java.io.File; import java.io.IOException; public class TestFile { public static ...
- java的文件操作类File
java.io.File类,是java获取文件/文件夹的所有属性,和完成所有相关操作的类 例子: package test.file.IO; import java.io.*; public clas ...
- Java IO_001.File类--文件或文件夹相关操作
Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...
随机推荐
- 动态负载均衡(Nginx+Consul+UpSync)
Http动态负载均衡 什么是动态负载均衡 传统的负载均衡,如果Upstream参数发生变化,每次都需要重新加载nginx.conf文件, 因此扩展性不是很高,所以我们可以采用动态负载均衡,实现Upst ...
- codeforces 466C. Number of Ways 解题报告
题目链接:http://codeforces.com/problemset/problem/466/C 题目意思:给出一个 n 个数的序列你,问通过将序列分成三段,使得每段的和都相等的分法有多少种. ...
- SQL server 备份/恢复/压缩 进度查询
第一步,用 sp_who2 查出备份的sid(或在窗口中的连接属性中看) exec sp_who2 第二步,用以下查询获得运行情况(看 percent_complete列) SELECT sessio ...
- 最基本PSO算法的C++实现
按照James Kennedy & Russell Eberhart (1995)的版本,算法过程如下: [x*] = PSO() P = Particle_Initialization(); ...
- 编码 —— PCM 编码
PCM:Pulse Code Modulation,脉冲编码调制: 1. 码率的计算 PCM约定俗成了无损编码,因为PCM代表了数字音频中最佳的保真水准,并不意味着PCM就能够确保信号绝对保真,PCM ...
- 火狐浏览器安装VULTR笔记
1.购买一台vultr服务器, 支持支付宝扫码支付,直接美刀转人民币实时结算:优先选日本的,然后美国的; 购买服务器步骤: Server Location: Tokyo Japan Server Ty ...
- COM组件开发实践(一)
Preface 因为项目需要,开始从事ActiveX方面的工作,看了一些资料,可惜都是些COM原理方面的,没有切合实际动手的东西,在CodeProject上读完David Marcionek的文章[1 ...
- [转]解决pycharm无法导入本地包的问题(Unresolved reference 'tutorial')
原文地址:https://www.cnblogs.com/yrqiang/archive/2016/03/20/5297519.html
- JAVA全栈工程师应具备怎样的知识体系?
Java是超高人气编程语言,拥有跨平台.面向对象.泛型编程等特性.在TIOBE编程语言排行榜中,连续夺得第一宝座,而且国内各大知名互联网公司,后端开发首选语言:非Java莫属. 今天是针对各类目有更详 ...
- ASP.NET Core会议管理平台实战_2、基本概念的理解
id Token携带用户的信息 AccessToken:是否有权限访问资源 看数据库的表,Client相关的表,api的相关的表 Resources把用户的简介抽象出来到IdentityClaims表 ...