黑马程序员济南中心JavaEE基础阶段必会案例NO.2
黑马程序员课程内容丰富多样,每个知识点我们都设计有新奇的案例让大家练习。黑马程序员训练营的课程也是案例驱动教学,每天都会进行大量的代码练习。今天我们就来一起做一个基础阶段第10天的一个小案例。
案例要求:设计一个工具类IOUtil,类中写一个方法copyFile(String src,String dir)。其中src是源文件路径,dir是目标路径。把src中的内容复制到dir路径中。
案例分析:我们要用到的知识点:面向对象的思想,方法(参数明确,没有返回值,功能明确),IO流相关的知识
分析完一个大概以后我们先写个IOUtil类:
[Java] 纯文本查看 复制代码
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 | import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException;
public class IOUtil { public static void copyFile(String src,String dir) throws IOException{ FileReader fr = new FileReader(src); BufferedReader br = new BufferedReader(fr); FileWriter fw = new FileWriter(dir); BufferedWriter bw = new BufferedWriter(fw); String s ; while((s=br.readLine())!= null) { bw.write(s); bw.newLine(); bw.flush(); } bw.close(); br.close(); } } |
今天学习了IO流复制文件的5中方法,这是第5中,用缓冲流复制文件。当然,我们也可以用别的方法。这里的注意事项就是注意一定要刷新,关流,不然会遇到目标文件里是空白的现象。
工具类写完以后就剩下调用方法了。不过这里我们是写在工具类中的,所以要先像创建学生类一样创建出IOUtil对象。然后用对象调用方法。
[Java] 纯文本查看 复制代码
1 2 3 4 5 6 7 8 9 | import java.io.IOException;
public class Test01 { public static void main(String[] args) throws IOException { IOUtil io = new IOUtil(); io.copyFile("a.txt","b.txt"); System.out.println("end"); } } |
我们准备好一个源文件,里面写一点内容。如何在项目中创建一个txt格式的文件?
在项目上右键:
取个名字,别忘了扩展名:
ok,现在来运行一下吧!
看看结果:
大功告成! 其实,每个案例都有很多种写法,不同的人可能有不同的思路,黑马程序员训练营也是非常鼓励大家开动脑筋积极思考的。
黑马,加油!~