zhang-chang-qi 2015-07-08 12:12 采纳率: 100%
浏览 1682
已采纳

java编程练习题,求解?

这道题不会做了,求程序代码。。。图片

  • 写回答

4条回答 默认 最新

  • JonsonJiao 2015-07-08 15:19
    关注
    package com.test.io;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class JavaIODemo {
    
        /**
         * 使用字符流实现文件拷贝
         * 
         * @param srcFile
         *            源文件
         * @param destFile
         *            目的文件
         * @return
         */
        public boolean copyByChar(File srcFile, File destFile) {
            try {
                FileReader fr = new FileReader(srcFile);
                FileWriter fw = new FileWriter(destFile);
                char[] buff = new char[1024];
                int len = fr.read(buff);
                while (len != -1) {
                    fw.write(buff, 0, len);
                    len = fr.read(buff);
                }
                fr.close();
                fw.close();
                return true;
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return false;
        }
    
        /**
         * 使用字节流实现文件拷贝功能
         * 
         * @param srcFile
         *            源文件
         * @param destFile
         *            目的文件
         * @param bufferSize
         *            缓冲区大小
         * @return
         */
        public boolean copyByByte(File srcFile, File destFile, int bufferSize) {
            try {
                FileInputStream fins = new FileInputStream(srcFile);
                FileOutputStream fous = new FileOutputStream(destFile);
                byte[] buff = new byte[bufferSize];
                int len = fins.read(buff);
                while (len != -1) {
                    fous.write(buff, 0, len);
                    len = fins.read(buff);
                }
                fins.close();
                fous.close();
                return true;
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return false;
        }
    
        public static void main(String[] args) {
            JavaIODemo ioDemo = new JavaIODemo();
            String srcFilePath = "src/com/test/io/JavaIODemo.java";
            String destFilePath_Byte = "D:\\JavaIODemo_Byte.txt"; // 字节流拷贝文件
            String destFilePath_Char = "D:\\JavaIODemo_Char.txt"; // 字符流拷贝文件
            File srcFile = new File(srcFilePath);
            File destFile_Char = new File(destFilePath_Char);
            File destFile_Byte = new File(destFilePath_Byte);
    
            // 使用字节流拷贝文件
            int bufferSize = 1024; // 指定缓冲区大小
            boolean flag = ioDemo.copyByByte(srcFile, destFile_Byte, bufferSize);
            if (flag) {
                System.out.println("使用字节流拷贝成功!");
            } else {
                System.out.println("使用字节流拷贝失败!");
            }
    
            // 使用字符流拷贝文件
            flag = ioDemo.copyByChar(srcFile, destFile_Char);
            if (flag) {
                System.out.println("使用字符流拷贝成功!");
            } else {
                System.out.println("使用字符流拷贝失败!");
            }
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题
  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 mac电脑,安装charles后无法正常抓包
  • ¥18 visio打开文件一直显示文件未找到
  • ¥15 请教一下,openwrt如何让同一usb储存设备拔插后设备符号不变?
  • ¥50 使用quartz框架进行分布式任务定时调度,启动了两个实例,但是只有一个实例参与调度,另外一个实例没有参与调度,不知道是为什么?请各位帮助看一下原因!!