(一)老师上周留了作业,让我们改进复制代码,我做的不好,在老师上课讲解后,我基本明白了要怎么做,要把从源文件读取字节从一个改为多个,这样就可以提高运行效率,大大缩短运行时间,下面是我的两段代码和运行结果
1.运行较慢的
package CopyFile;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/**

  • 实现文件复制
  • @author Administrator
  • */
    public class CopyFile {
    public static void copyBytesFile(String sFileName,String dFileName) throws IOException{

      //创建文件输入流对象和文件输出流对象//文件输入流对象与源文件关联FileInputStream fis = new FileInputStream(sFileName);//文件输出流对象与目标文件关联FileOutputStream fos = new FileOutputStream(dFileName);//循环读取文件的内容,同时写出到外部的磁盘文件int read = fis.read();//从关联的源文件中读一个字节,如果到达文件末,返回值为-1while(read != -1){fos.write(read);//向关联的目标文件写出一个字节read = fis.read();}//清空缓存关闭流对象fis.close();fos.close();

    }
    /**

    • @param args
      */
      public static void main(String[] args) {
      // TODO Auto-generated method stub
      long t1,t2;
      t1 = System.currentTimeMillis();
      try {
      CopyFile.copyBytesFile("a.mp3", "temp.mp3");
      } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }
      t2 = System.currentTimeMillis();
      System.out.println("用时:" + (t2 - t1));

    }

}

2.运行较快的
package CopyFile;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/**

  • 实现文件复制
  • @author Administrator
  • */
    public class CopyFile {
    public static void copyBytesFile2(String sFileName,String dFileName) throws IOException{

          //创建文件输入流对象和文件输出流对象//文件输入流对象与源文件关联FileInputStream fis = new FileInputStream(sFileName);//文件输出流对象与目标文件关联FileOutputStream fos = new FileOutputStream(dFileName);//循环读取文件的内容,同时写出到外部的磁盘文件byte[] b = new byte[1024];/*从关联的源文件中读多个字节,保存到字节数组b中,如果到达文件末。* 返回值为-1,否则返回值为实际读到的字节数。*/int read = fis.read(b);//从关联的源文件中读一个字节,如果到达文件末,返回值为-1while(read != -1){fos.write(b);//向关联的目标文件写出一个字节read = fis.read(b);}//清空缓存关闭流对象fis.close();fos.close();

    }
    /**

    • @param args
      */

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    long t1,t2;
    t1 = System.currentTimeMillis();
    try {
    CopyFile.copyBytesFile2("a.mp3", "temp.mp3");
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    t2 = System.currentTimeMillis();
    System.out.println("用时:" + (t2 - t1));

    }

}

(二)期末课程设计经过讨论,我们小组准备在期末课程设计做一个视频播放器,我们希望可以实现播放视频,快进快退,播放,暂停,停止等多项事件响应功能,并会努力去完成。下面是我们准备要做成的界面样式。

转载于:https://www.cnblogs.com/abnry/p/5368848.html

java学习笔记(4)相关推荐

  1. java学习笔记11--Annotation

    java学习笔记11--Annotation Annotation:在JDK1.5之后增加的一个新特性,这种特性被称为元数据特性,在JDK1.5之后称为注释,即:使用注释的方式加入一些程序的信息. j ...

  2. java学习笔记13--反射机制与动态代理

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note13.html,转载请注明源地址. Java的反射机制 在Java运行时环境中,对于任意 ...

  3. 准备写java学习笔记

    准备写java学习笔记 java int 转载于:https://blog.51cto.com/cryingcloud/1975267

  4. Java学习笔记--StringTokenizer的使用

    2019独角兽企业重金招聘Python工程师标准>>> Java Tips: 使用Pattern.split替代String.split String.split方法很常用,用于切割 ...

  5. java学习笔记12--异常处理

    java学习笔记系列: java学习笔记11--集合总结 java学习笔记10--泛型总结 java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 j ...

  6. Java学习笔记(十)--控制台输入输出

    输入输出 一.控制台输入 在程序运行中要获取用户的输入数据来控制程序,我们要使用到 java.util 包中的 Scanner 类.当然 Java 中还可以使用其他的输入方式,但这里主要讲解 Scan ...

  7. java学习笔记16--I/O流和文件

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input  Output)流 IO流用来处理 ...

  8. java学习笔记15--多线程编程基础2

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note15.html,转载请注明源地址. 线程的生命周期 1.线程的生命周期 线程从产生到消亡 ...

  9. java学习笔记14--多线程编程基础1

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note14.html,转载请注明源地址. 多线程编程基础 多进程 一个独立程序的每一次运行称为 ...

  10. java学习笔记11--集合总结

    java学习笔记系列: java学习笔记10--泛型总结 java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Ob ...

最新文章

  1. 机器传奇:全球13位科学家和他们的机器人“孩子”
  2. 配置Trunk实现相同Vlan通信
  3. 基于蔡氏混沌电路进行非线性共振探究
  4. C++重载下标操作符[](二)
  5. 超级简单的配置虚拟机网络yum源
  6. (Hook)SetWindowsHookEx和UnhookWindowsHookEx
  7. 禁止php 报错怎么做,php – 禁用Laravel错误处理程序
  8. 关于GPS的1PPS时间同步功能探索与测试
  9. beetl 取list下标的问题
  10. linux fastboot 工具下载,linuxadb fastboot 和VNC工具的安装使用
  11. 【WebRTC】几个重要sdp参数描述
  12. 【教程】CoreAVC+Haali安装及设置简易教程(KMPlayer)(4)
  13. AWSS3文件断点下载,分片上传,断点续传
  14. 遗传算法原理与matlab,有关路径优化遗传算法原理(结合matlab代码)
  15. ORACLE函数返回数据或字符串
  16. 新辰:雕爷与张朝阳分享创业感悟 给90后创业者打鸡血共勉
  17. Localhost到底是干什么用的?
  18. Learning a Proposal Classifier for Multiple Object Tracking
  19. 免费建立个人网站怎么做?教你简单的方法
  20. JAVA 身份证校验与统一社会信用代码校验

热门文章

  1. html5--7-33 阶段练习5
  2. Python学习(四) —— 编码
  3. gRPC源码分析2-Server的建立
  4. GCD介绍(一): 基本概念和Dispatch Queue (转载)
  5. 关于PChar(@string)的疑惑
  6. 《程序设计与数据结构》第四周学习总结
  7. 中国高性能计算机TOP100出炉 曙光联想并列第一
  8. 网络 http服务器-v1-多线程版本
  9. struts2学生信息管理系统篇章③
  10. 关于ViewGroup中requestDisallowInterceptTouchEvent的用法