黑马程序员技术交流社区
标题:
点招习题
[打印本页]
作者:
dangyongping
时间:
2016-5-8 23:29
标题:
点招习题
package cn.itcast.spx_03;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
//IO复制文件改后缀名,用高效流多层文件夹(递归)。
/*
* 思路:
* 1. 创建数据源
* 2. 创建目的地
* 3.将file对象转换为File数组,遍历每个数组,
* 4.获得每个File对象,判断:
* 如果是文件夹,就建立文件夹,然后在重复3
* 如果不是文件夹,改名,然后复制到指定目录
*
*/
public class FileCopyDemo {
public static void main(String[] args) throws IOException {
// 创建数据源
File srcFile = new File("e:\\aaaa");
// 創建目的地
File destFile = new File("F:\\bbbb");
if(!destFile.exists()){
destFile.mkdirs();
}
FileCopyDemo.isFile(srcFile,destFile);
}
// 定义一个方法,判断数组是否是文件夹
public static void isFile(File srcFile,File destFile) throws IOException{
// 转换成File数组
File[] file = srcFile.listFiles();
// 遍历数组,获取每个元素
for (File file2 : file) {
// 判斷是否是文件夾,如果是就创建,然后递归.
if(file2.isDirectory()){
String name = file2.getName();
File ff = new File(destFile,name);
ff.mkdirs();
isFile(file2,ff);
}
else{
String name = file2.getName();
String newName = name.replace(".java",".txt");
// 创建最终文件
File newFile = new File(destFile,newName);
BufferedReader br = new BufferedReader(new FileReader(file2));
BufferedWriter bw = new BufferedWriter(new FileWriter(newFile));
String line = null;
while((line = br.readLine())!= null){
bw.write(line);
bw.newLine();
bw.flush();
}
}
}
}
}
public class TicketsRunnable implements Runnable {
private int tickets = 100;
@Override
public void run() {
while (true) {
synchronized (this) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (tickets > 0) {
//当剩余票数为50时,进入此判断
if(tickets == 50 ){
//如果当前线程不是指定的线程,就等待
if(!Thread.currentThread().getName().equals("窗口4")){
try {
this.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}else{
//当是指定线程时,执行打印语句
System.out.println(Thread.currentThread().getName()
+ "正在卖第" + (tickets--) + "张票");
//唤醒所有线程,继续执行
notifyAll();
}
}
System.out.println(Thread.currentThread().getName()
+ "正在卖第" + (tickets--) + "张票");
}
}
if(tickets<1){
break;
}
}
}
}
复制代码
作者:
zhaokai123456
时间:
2016-5-8 23:38
连个题目都没有
作者:
hl131226
时间:
2016-5-10 22:32
路过....看过....走了 ...
作者:
ybqred
时间:
2016-5-11 21:31
楼主好人
作者:
Sj改变
时间:
2016-5-11 22:16
zhaokai123456 发表于 2016-5-8 23:38
连个题目都没有
IO复制文件改后缀名,用高效流多层文件夹(递归)
作者:
z736886202
时间:
2016-5-11 22:23
谢谢分享楼主好人
作者:
sasyun
时间:
2016-5-11 22:29
楼主好人
作者:
小菜鸟。
时间:
2016-5-11 22:45
{:2_31:}感谢分享。
作者:
安东诺夫
时间:
2016-5-11 23:08
都是课堂案例啊,点招题还能用eclipse?唉,不说了社招的苦逼复习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2