黑马程序员技术交流社区
标题:
今天敲的代码
[打印本页]
作者:
clz2431
时间:
2015-12-19 23:27
标题:
今天敲的代码
public class Test1 {
public static void main(String[] args) throws IOException {
//读 UTF-8的文件 写的时候是GBK格式
//创建InputStreamReader类的对象,用来封装数据源
//InputStreamReader isr = new InputStreamReader(new FileInputStream("a.txt"));
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("a.txt"),"UTF-8"));
//创建OutputStreamWriter类的对象,来封装目的地文件
//OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("b.txt"));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("b.txt"),"GBK"));
//正常的读写代码,核心六部
int ch;
while((ch=br.read())!=-1){
bw.write(ch);
}
br.close();
bw.close();
System.out.println("拷贝完成");
}
}
public class Test2 {
public static void main(String[] args) throws IOException {
//用字符高效流 来一次读写一行
//读b.txt 然后写到 c.txt中
BufferedReader br = new BufferedReader(new FileReader("b.txt")); //封装数据源文件
BufferedWriter bw = new BufferedWriter(new FileWriter("c.txt")); //封装目的地文件
//正常的读写代码
String line;
while((line=br.readLine())!=null){
bw.write(line);
bw.newLine(); //根据当前的系统,给出对应的换行符
}
br.close();
bw.close();
System.out.println("拷贝完成");
}
}
public class Test3 {
//private static long count;
public static void main(String[] args) {
//1,从键盘接收一个文件夹路径,统计该文件夹大小
File file = getDir();
long count = getLength(file); //计算要统计的文件夹的打下
System.out.println(count); //打印结果
}
//定义一个方法,用来计算文件的大小,
public static long getLength(File file){
//获取要计算的文件夹下的 所有的文件或者文件夹对象
File[] subFiles =file.listFiles();
//定义一个统计变量,用来记录各个文件的大小
long count=0;
//遍历获取到的File[],然后判断是文件还是 文件夹
for (File subFile : subFiles) {
if (subFile.isFile()) { //如果是文件,就直接计算大小,
//count = count + subFile.length();
count +=subFile.length();
} else {
//如果是文件夹,就递归调用
count += getLength(subFile);
}
}
return count;
}
//定义一个方法,接收用户录入的 文件夹路径
public static File getDir(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个文件夹路径");
while (true) { //如果用户录入的不是文件夹路径,就让用户一直录入
File file =new File(sc.nextLine());
//判断文件夹是否存在
if (!file.exists()) {
System.out.println("路径不存在,别捣蛋,写个正确的");
}else if(file.isFile()){
System.out.println("录入的是文件路径,重写录入一个:");
}else {
return file;
}
}
}
}
public class Test4 {
public static void main(String[] args) {
//File file = Test3.getDir();
File file = getDir();
deleteDir(file);
System.out.println("删除完成");
}
//定义一个方法,用来删除文件夹,
public static void deleteDir(File file){
//获取要计算的文件夹下的 所有的文件或者文件夹对象
File[] subFiles =file.listFiles();
//遍历获取到的File[],然后判断是文件还是 文件夹
for (File subFile : subFiles) {
if (subFile.isFile()) { //如果是文件,就直接删除,
subFile.delete();
} else {
//如果是文件夹,就递归调用
deleteDir(subFile);
}
}
//将当前文件夹删除
file.delete();
}
//定义一个方法,接收用户录入的 文件夹路径
public static File getDir(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个文件夹路径");
while (true) { //如果用户录入的不是文件夹路径,就让用户一直录入
File file =new File(sc.nextLine());
//判断文件夹是否存在
if (!file.exists()) {
System.out.println("路径不存在,别捣蛋,写个正确的");
}else if(file.isFile()){
System.out.println("录入的是文件路径,重写录入一个:");
}else {
return file;
}
}
}
}
作者:
tiandaochouqin
时间:
2015-12-19 23:33
条理清楚.学习了..
作者:
唐洪超
时间:
2015-12-20 10:26
条理清晰,思路明确
作者:
shiax11
时间:
2015-12-20 13:04
66666666 大神
作者:
汐枫wait
时间:
2015-12-20 16:51
写得很好,赞
作者:
wp969337
时间:
2015-12-20 22:01
这么吊呀
作者:
路路路路灯亮了
时间:
2015-12-20 22:37
完全看不懂的说啊
作者:
Java1211张美红
时间:
2015-12-20 22:57
每天积累大量代码!
作者:
王冀仁
时间:
2015-12-21 16:42
很不错受教了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2