Java基础面试操作题: File IO 文件过滤器FileFilter 练习 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
package com.swift; 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 Copy_java_To_txt { public static void main(String[] args) {
/*
* 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
*/
try {
StringBuffer sb = new StringBuffer();
BufferedReader br = new BufferedReader(
new InputStreamReader(new FileInputStream("e:\\neck\\test.java"), "utf-8"));
String str;
while ((str = br.readLine()) != null) {
System.out.println("从文件中读取了一行...");
sb.append(str);
sb.append("\r\n");
} System.out.println("文件读取到容器成功"+"\r\n"+sb.toString()); String dir="e:\\apple";
String fileName="test.txt";
File file=new File(dir,fileName);
if(!file.getParentFile().exists()) {
System.out.println(file.getParentFile()+"目录不存在,即将创建...");
file.getParentFile().mkdirs();
}else {
System.out.println("目录存在,不用创建...");
}
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"utf-8"));
bw.write(sb.toString());
bw.flush(); } catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} }
上面是指定哪个文件进行复制
下边是搜索出所有的以.java结尾的文件复制到另一个文件夹并改名
需要用到下边的两种列表
list()方法是返回某个目录下的所有文件和目录的文件名,返回的是String数组
listFiles()方法是返回某个目录下所有文件和目录的绝对路径,返回的是File数组
package com.swift; import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileFilter;
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 Copy_java_To_txt { public static void main(String[] args) {
/*
* 把一个文件夹下的.java文件(需要搜索所有以.java结尾的文件)复制到另一个文件夹下的.txt文件(改名为.txt的文件)
*/
File[] files = null;
try {
StringBuffer sb = new StringBuffer();
File dir_source = new File("e:\\neck");
File dir_destination = new File("e:\\apple"); if(!dir_destination.exists()) {
dir_destination.mkdirs();
} if (dir_source.exists()) {
System.out.println("搜索地址存在...");
if (dir_source.isDirectory()) {
System.out.println("此地址是一个目录...");
files = dir_source.listFiles(new FileFilter() { @Override
public boolean accept(File arg0) {
return arg0.getName().endsWith(".java");
}
});
} else {
System.out.println("此地址不是目录...");
}
} else {
System.out.println("搜索地址不存在...");
} for (File f : files) {
System.out.println(f);
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(f), "utf-8"));
String str;
while ((str = br.readLine()) != null) {
System.out.println("从文件中读取了一行...");
sb.append(str);
sb.append("\r\n");
} System.out.println("一个 文件读取到容器成功" + "\r\n" + sb.toString()); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(new File(dir_destination, f.getName().replaceAll(".java", ".txt"))),
"utf-8"));
bw.write(sb.toString());
bw.flush();
sb.delete(0, sb.length());//也可以sb.setLength(0);sb= new StringBuffer();都可以清空StringBuffer }
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} }
Java基础面试操作题: File IO 文件过滤器FileFilter 练习 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件的更多相关文章
- Java基础面试操作题:读取该文件内容,并按照自然顺序排序后输出到 另一个文件中
package com.swift; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...
- Java基础面试操作题: 获取 1-20 之间的随机数,共计 20 个,要求不能重复 获取 1-20 之间的随机数,共计 10 个,要求不能重
package com.swift; import java.util.HashSet; import java.util.Random; import java.util.Set; public c ...
- Java基础面试操作题:线程同步代码块 两个客户往一个银行存钱,每人存三十次一次存一百。 模拟银行存钱功能,时时银行现金数。
package com.swift; public class Bank_Customer_Test { public static void main(String[] args) { /* * 两 ...
- Java基础面试操作题: 线程问题,写一个死锁(原理:只有互相都等待对方放弃资源才会产生死锁)
package com.swift; public class DeadLock implements Runnable { private boolean flag; DeadLock(boolea ...
- Java基础面试操作题:Java代理工厂设计模式 ProxyFactory 有一个Baby类,有Cry行为,Baby可以配一个保姆 但是作为保姆必须遵守保姆协议:能够处理Baby类Cry的行为,如喂奶、哄睡觉。
package com.swift; public class Baby_Baomu_ProxyFactory_Test { public static void main(String[] args ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础面试系列(一)
Java基础面试总结(一) 1. 面向对象和面向过程的区别 面向过程 面向对象 性能 高于面向对象 类加载的时候需要实例化,比较消耗资源 三易(易维护,易复用,易扩展) 不如面向对象 具有封装,继承, ...
- Java基础-线程操作共享数据的安全问题
Java基础-线程操作共享数据的安全问题 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.引发线程安全问题 如果有多个线程在同时运行,而这些线程可能会同时运行这段代码.程序每次运 ...
- Linux将一个文件夹或文件夹下的所有内容复制到另一个文件夹
Linux将一个文件夹或文件夹下的所有内容复制到另一个文件夹 1.将一个文件夹下的所有内容复制到另一个文件夹下 cp -r /home/packageA/* /home/cp/packageB ...
随机推荐
- 纯CSS,多个半圆以中心点旋转
效果图: html代码: <div style=" background:#000; position: relative; width:300px; height:300px;&qu ...
- [Xcode 实际操作]七、文件与数据-(9)编码创建Plist文件(属性列表文件)
目录:[Swift]Xcode实际操作 本文将演示如何通过编码的方式,创建属性列表文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...
- ES6简述
啥是ES6 大家都知道,JavaScript由DOM.BOM.ECMAScript组成,ECMAScript是标准. ES6的全称其实是ES2015(6.0)每年更新,依次类推 ES2016(7) . ...
- EXP-00000: Message 0 not found; No message file for product=RDBMS, facility=EXP问题的解决方案
EXP-00000: Message 0 not found; No message file for product=RDBMS, facility=EXP 最近在服务器上准备做一个批处理,定时备份 ...
- JMeter(2) 集成jmeter+ant+jenkins
一.ant安装 $su root $vi /etc/bashrc 插入两行(i+enter插入) export ANT_HOME=/usr/local/apache-ant-1.9.3 export ...
- codevs1026-dp(记忆化搜索)
题目描述 Description 年轻的拉尔夫开玩笑地从一个小镇上偷走了一辆车,但他没想到的是那辆车属于警察局,并且车上装有用于发射车子移动路线的装置. 那个装置太旧了,以至于只能发射关于那辆车的移动 ...
- criteria用法
Criteria Query通过面向对象化的设计,将数据查询条件封装为一个对象.简单来讲,Criteria Query可以看作是传统SQL的对象化表示,如: Java代码 Criteria cri ...
- SSAS 非重复计数
在SSAS设计时,对商品编号列非重复计数:
- Thread 和 Runnable创建新线程的区别,Runnable可以共享线程类的实例属性
Thread实现多线程: public class Thread2 extends Thread{ public int i; public void run(){ for(; i < 100 ...
- Myeclipse连接数据库删除数据库(JDBC)
package com.test.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pr ...