之前学了File便想把我学习视频的名字改了,因为文件名太长不好看,便试着写了个功能实现

 package com.gh.file;

 import java.io.File;

 /**
* 批量文件命名
*
* @author ganhang
*
*/
public class FileRename {
public static String filepath = "F:\\学习\\JAVA\\JAVA_SE";// 要批量重命名的文件夹的地址
public static void main(String[] args) {
File file = new File(filepath);
File[] fileArrays = file.listFiles();
// 输出文件数量
System.out.println(fileArrays.length);
for (File f : fileArrays)
{
String filename = f.getName();
int len=0;
String newfileName = null;
if(filename.startsWith("**********JAVA.SE视频")){//避免广告用*代替了
len="**********JAVA.SE视频".length();
newfileName="Java"+filename.substring(len);
}
else if(filename.startsWith("******_JAVA基础")){
len="******_JAVA基础".length();
newfileName="Java"+filename.substring(len);
}
f.renameTo(new File(filepath+File.separator+newfileName));//重命名
}
File[] fileArrays1 = file.listFiles();//输出文件名看看
for (File fs : fileArrays1) {
System.out.println(fs.getName());
}
}
}

还有两个作业,补在这后面吧;

 package com.gh.homework;

 import java.io.File;

 /**
* 查找指定目录下以指定后缀名结尾的文件;
*
* @author ganhang
*
*/
public class FileDemo {
public static void findfile(File file, String extsName) {
if (file == null)
return;
if (file.isDirectory()) {
File[] fs = file.listFiles();
if (fs != null) {
for (File file2 : fs) {
findfile(file2, extsName);// 递归实现;
}
}
} else {
String path = file.getPath();
if (path.endsWith(extsName)) {
System.out.println(file.getPath());
}
}
} // 查找d盘下所有txt文件 输出路径;
public static void main(String[] args) {
File file = new File("d:\\");
String extsName = ".txt";
findfile(file, extsName);
}
}
package com.gh.homework;

import java.io.File;

/**
* 删除指定目录下以指定后缀名结尾的文件;
*
* @author ganhang
*
*/
public class FileDeleteDemo {
public static void deletefile(File file, String extsName) {
if (file == null)
return;
if (file.isDirectory()) {
if(file.length()==0){
file.delete();
System.out.println("已删除"+file.getPath());
}
File[] fs = file.listFiles();
if (fs != null) {
for (File file2 : fs) {
deletefile(file2, extsName);// 递归实现;
}
}
} else {
String path = file.getPath().toLowerCase();
if (path.endsWith(extsName)) {
//file.delete();
//System.out.println("已删除"+file.getPath());
}
}
} // 删除d盘下所有txt文件 输出路径;
public static void main(String[] args) {
File file = new File("f:\\");
String extsName = ".txt";
deletefile(file, extsName);
}
}

Java学习之IO之File类二的更多相关文章

  1. java学习笔记IO之File类

    File类总结 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Times } p.p2 { margin: 0.0px 0.0px 0.0p ...

  2. Java学习之IO之File类一

    File的操作 package com.gh.file; import java.io.File; import java.io.IOException; /** * File操作 * @author ...

  3. Java学习笔记36(File类)

    File类可以对操作系统中的文件进行操作: File类的静态成员变量: package demo; import java.io.File; public class FileDemo { publi ...

  4. java学习笔记27(File类)

    File类: 定义:文件和目录径的抽象表示形式, Java中将路径或者文件封装成File对象 1.File类的静态成员变量 package com.zs.Demo2; import java.io.F ...

  5. Java—IO流 File类的常用API

    File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOE ...

  6. java io包File类

    1.java io包File类, Java.io.File(File用于管理文件或目录: 所属套件:java.io)1)File对象,你只需在代码层次创建File对象,而不必关心计算机上真正是否存在对 ...

  7. java学习一目了然——IO

    java学习一目了然--IO IO是java学习当中很重要的一部分.IO流实现数据的上传下载,即读写数据,包括输入和输出流,输入流指的是将数据以字符或字节形式从外部媒介比如文件.数据库等读取到内存中所 ...

  8. Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

    最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...

  9. java学习笔记07--日期操作类

    java学习笔记07--日期操作类   一.Date类 在java.util包中定义了Date类,Date类本身使用非常简单,直接输出其实例化对象即可. public class T { public ...

随机推荐

  1. 基于 dbms_redefinition 在线重定义表

    Oracle 支持在线重定义表,也就是说我们可以在修改表结构(DDL)的同时进行相关的DQL.DML操作,使得前端的DML根本感觉不到表结构实际上已经发生了变化,对于用户而言是完全透明的.当然在线重定 ...

  2. WebSite 文件上传Demo

    知识点: 1 <!--上传文件时:        1.必须使用Post方式来提交数据        2.必须设置表单的enctype属性        3.必须在表单中包含文件域.input t ...

  3. hough变换中,直线方程从XY空间转换到参数空间的转换过程

    XY空间直线方程:y=kx+b 参数空间直线方程:xcosθ+ysinθ=ρ 直线方程从XY空间转换到参数空间过程的转换过程: k=tan(π-α)=tan(-α)=-tanα=-cotθ=-cosθ ...

  4. Java RMI 简介及其优劣势总结

    今天,帮别人看UDAS配置问题时,看到采用的是RMI方式的调用,如:rmi://10.20.134.140:2299/DataServer,而且这个端口是被直接硬编码在UDAS的代码中的.既然看到了, ...

  5. 现在输入 n 个数字, 以逗号, 分开; 然后可选择升或者 降序排序;

    /* 现在输入 n 个数字, 以逗号, 分开: 然后可选择升或者 降序排序: */ import java.util.*; public class bycomma{ public static St ...

  6. Web学习之自定义标签

    1.编写一个实现Tag接口的Java类(标签处理器类) package me.gacl.web.tag; import java.io.IOException; import javax.servle ...

  7. Hadoop 相关问题

    1.MR Job 输入非常多,启动map 非常多,如何提高MapTask 启动速度(附加条件:集群很空闲,资源多多): 参考答案: a.重写调度器算法,降低时间复杂度 b.Out-of-bound h ...

  8. .net format 中 大括号{}处理

    1.string string.format(string format,object arg0) 错误:因为方法中使用{n}做占位符号了,所以其他需要括号{}的地方,就需要{{}}

  9. Android Launcher label和Main Activity保持不一致

    最近在开发一个库存管理的App,AndroidMainifest.xml中是这样设定的: <application android:allowBackup="true" an ...

  10. Docker背后的容器管理——Libcontainer深度解析

    Libcontainer 是Docker中用于容器管理的包,它基于Go语言实现,通过管理namespaces.cgroups.capabilities以及文件系统来进行容器控制.你可以使用Libcon ...