内容发布更新时间 : 2024/11/15 1:58:49星期一 下面是文章的全部内容请认真阅读。
Java语言程序设计 第六章课后习题答案
1.将本章例6-1至6-18中出现的文件的构造方法均改为使用File类对象作为参数实现。
个人理解:File类只能对整文件性质进行处理,而没法通过自己直接使用file.Read()或者是file.write()类似方法对文件内容进行写或者读取。注意:是直接;下面只提供一个例2变化,其他的你自己做,10几道啊,出这题的人真他妈有病。
import java.io.*; public class test6_2{ }
运行结果:(电脑系统问题,没法换行,所以一般使用BuffereWriter中newLine()实现换行)
public static void main(String[] args) throws IOException {
String fileName = \; File writer=new File(fileName); writer.createNewFile();
BufferedWriter input = new BufferedWriter(new input.write(\);
input.write(\); input.write(\你还好吗?\\n\); input.close(); }
FileWriter(writer));
2.模仿文本文件复制的例题,编写对二进制文件进行复制的程序.
// CopyMaker类
import java.io.*; class CopyMaker {
String sourceName, destName; BufferedInputStream source; BufferedOutputStream dest; int line;
//打开源文件和目标文件,无异常返回true private boolean openFiles() {
try {
source = new BufferedInputStream(new FileInputStream( sourceName ));
}
catch ( IOException iox ) {
System.out.println(\ + sourceName ); return false; } try {
dest = new BufferedOutputStream(new FileOutputStream( destName )); }
catch ( IOException iox ) {
System.out.println(\ + destName ); return false; }
return true; }
//复制文件
private boolean copyFiles() { try {
line = source.read(); while ( line != -1 ) {
dest.write(line); line = source.read(); } }
catch ( IOException iox ) {
System.out.println(\ ); return false; }
return true; }
//关闭源文件和目标文件
private boolean closeFiles() { boolean retVal=true; try { source.close(); } catch ( IOException iox ) {
System.out.println(\ + sourceName ); retVal = false; }
try { dest.close(); }
catch ( IOException iox ) {
System.out.println(\ + destName ); retVal = false; }
return retVal; }
//执行复制
public boolean copy(String src, String dst ) { sourceName = src ; destName = dst ;
return openFiles() && copyFiles() && closeFiles(); } }
//test6_2
public class test6_2 {
public static void main ( String[] args ) {
String s1=\,s2=\;
if(new CopyMaker().copy(s1, s2)) System.out.print(\复制成功\); else
System.out.print(\复制失败\); } }
运行前的两个文本:lin.txt和newlin.txt(为空)
运行后: