一、FileOutputStream类。

构造函数:FileOutputStream fos = new FileOutputStream(String fileName);//参数为相关联的文件路径及名称。

主要方法:viod write(byte []b);//将b.length 个字节写入到目的文件中去。

void write(byte []b,int off,int len);//将指定数组中偏移量off开始的len个字节写入该文件中。(未演示)

void fiush();//刷新该流,将该流中的字节刷到目的文件中去。

void close();//关闭此流,并释放所有与该流相关的资源。同样关闭前先调用flush()方法。

二、FileInputStrean类

构造函数:FileInputStream fis = new FileInputStream(String fileName);//参数为相关联的文件路径及名称。

主要方法:int read();//从此流中读取下一个数据字节。

int read(byte[] b);//从此流中读取b.length个字符到该byte数组中。

int read(byte[] b,int off,int len);//将此流中的len个字节数据读入到byte数组偏移off(含off)向后位置中。(未演示)

int available();//返回剩余的文件字节数。

package ByteStream;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class ByteStreamDemo {/*** @param args* @throws IOException */public static void main(String[] args) throws IOException {
//      demo_Write();demo_Read();}public static void demo_Read() throws IOException {FileInputStream fis = new FileInputStream("C:\\out_Stream.txt");//      System.out.println(fis.available());//打印文件所占字节数。
//      byte []bfr = new byte[fis.available()];//不建议使用,当文件过大时,会照成内存不足。
//      fis.read(bfr);
//      System.out.println(new String(bfr));//推荐使用这个。byte[]ch = new byte[1024];int len = 0;while((len = fis.read(ch)) != -1){System.out.println(new String(ch,0,len));}//       int ch = 0;
//      while((ch = fis.read()) != -1){
//          System.out.print((char)ch);
//      }//     int ch = fis.read();
//      System.out.println((char)ch);fis.close();}public static void demo_Write() throws IOException {//创建字节输出流对象。用于操作文件。FileOutputStream fos = new FileOutputStream("C:out_Stream.txt");//写字节数据。fos.write("hello!FileOuyputStream!".getBytes());fos.close();}}

复制媒体文件的不同程序

package ByteStream;import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class CopyMp3 {public static void main(String[] args) throws IOException {
//      copy_Show1();
//      copy_Show2();
//      copy_Show3();copy_Show4();
//      copy_Show5();}public static void copy_Show5() throws IOException {/*** 没用缓冲技术,超级慢。。。!*/FileInputStream fis = new FileInputStream("f:\\王强 - 不想让你哭.mp3");FileOutputStream fos = new FileOutputStream("f:\\王强 - 不想让你哭(6).mp3");int ch = 0;while ((ch = fis.read()) != -1) {fos.write(ch);}fis.close();fos.close();}public static void copy_Show4() throws IOException {//不建议使用。当文件过大时,会内存溢出!FileInputStream fis = new FileInputStream("f:\\王强 - 不想让你哭.mp3");BufferedInputStream bufis = new BufferedInputStream(fis);FileOutputStream fos = new FileOutputStream("f:\\王强 - 不想让你哭(5).mp3");BufferedOutputStream bufos = new BufferedOutputStream(fos);byte []b = new byte[bufis.available()];bufis.read(b);bufos.write(b);    bufis.close();bufos.close();}public static void copy_Show3() throws IOException {FileInputStream fis = new FileInputStream("f:\\王强 - 不想让你哭.mp3");BufferedInputStream bufis = new BufferedInputStream(fis);FileOutputStream fos = new FileOutputStream("f:\\王强 - 不想让你哭(4).mp3");BufferedOutputStream bufos = new BufferedOutputStream(fos);int ch = 0;while ((ch = bufis.read()) != -1) {bufos.write(ch);}bufis.close();bufos.close();}public static void copy_Show2() throws IOException {FileInputStream fis = new FileInputStream("f:\\王强 - 不想让你哭.mp3");BufferedInputStream bufis = new BufferedInputStream(fis);FileOutputStream fos = new FileOutputStream("f:\\王强 - 不想让你哭(3).mp3");BufferedOutputStream bufos = new BufferedOutputStream(fos);byte[] mybufb = new byte[1024];int len = 0;while ((len = bufis.read(mybufb)) != -1) {bufos.write(mybufb, 0, len);bufos.flush();}bufis.close();bufos.close();}public static void copy_Show1() throws FileNotFoundException, IOException {FileInputStream fis = new FileInputStream("f:\\王强 - 不想让你哭.mp3");FileOutputStream fos = new FileOutputStream("f:\\王强 - 不想让你哭(2).mp3");byte[] mybufb = new byte[1024];int len = 0;while ((len = fis.read(mybufb)) != -1) {fos.write(mybufb, 0, len);}fis.close();fos.close();}}

FileOutputStream 类 和 FileInputStream类的简单介绍,附代码演示。以及一个复制媒体文件的小程序。相关推荐

  1. PipedInputStream类 和 PipedOutputStream类 的简单介绍和代码演示

    PipedOutputStream类 和PipedInputStream 类为管道输出流 和管道输入流.通常都是以管道输出流作为管道的起始端,通常管道输出流和管道输入流通过connect方法连接起来, ...

  2. php 运营商授权,PHP判断手机号运营商(详细介绍附代码)

    道理很简单,知道手机号规则 进行正则判断就可以 移动:134.135.136.137.138.139.150.151.157(TD).158.159.187.188 联通:130.131.132.15 ...

  3. linux下的fgetc()与fputc()函数详细介绍及代码演示

    linux下的标准I/O的fgetc()与fputc()函数详细介绍及代码演示 文章目录 前言 一.fgetc()用法介绍 二.fputc()用法介绍 代码演示 总结 前言 在C语言中,读写文件比较灵 ...

  4. VC++6.0 win32 控制台应用程序 简单应用 附代码

    **VC++6.0 win32 控制台应用程序 简单应用 附代码 ** .cpp 文件名 注意:在源文件添加如下声明: #include //没有.h using namespace std;//使用 ...

  5. InputStreamReader 和 OutputStreamWriter类使用方法简单介绍,及演示。

     InputStreamReader 和 OutputStreamWriter类使用方法简单介绍. 一.InputStreamReader类 InputStreamReader 将字节流转换为字符流. ...

  6. 关于类模板怎么用的简单介绍

    类模板的意义: 一般是减少类体内容一致但参数类型不同的类的编写: 类模板的应用流程: 1.首先你需要先写一个普通的类.参数类型先人选一样 class Compare{private:int a,b;p ...

  7. 计算机网络 文件传输小程序代码,懒得打开电脑传文件?这四类小程序把这事解决了...

    生命在于静止,主持人吴昕这句火爆的口头禅,诠释了当代人对于"懒"的追求. 懒得出门吃饭,有外卖:懒得下载应用,有小程序... 在办公场景下,更是要"懒"到底,不 ...

  8. 详细介绍附代码:使用jquery,和php文件构建一个简单的在线聊天室,通过ip显示googlemap

    最近学习了关于使用最为流行的jquery发送请求,在实践中以最为简单的聊天室作为测验的辅助工具,对相关网页开发有一个初步的认识,希望大家能够一起学习进步.        首先介绍一下相关文件信息和功能 ...

  9. ResNet简单介绍+Pytroch代码实现

    文章目录 一.背景介绍 二.ResNet网络结构 1.ResNet34结构示意图 2.不同层数的ResNet采用的Block结构. 3.不同层数的ResNet网络结构示意图 4.实验结果 三.Pytr ...

最新文章

  1. Qt中文手册 之 QApplication
  2. POJ 1038 Bugs Integrated Inc (复杂的状压DP)
  3. iOS病毒XcodeGhost批量检测工具,开源Github(检测ipa文件)
  4. mysql数据库性能指标结果_MySQL数据库性能优化的关键参数(转)
  5. [转]利用ASP.NET 2.0创建自定义Web控件(1)
  6. Divan and a New Project 贪心,模拟(1000)
  7. 最近面试一些厂的面经整理(阿里,腾讯,字节等)
  8. ios上textarea不能输入
  9. 判断是否为ajax请求
  10. SQL Server创建复合索引时,复合索引列顺序对查询的性能影响
  11. JavaSE基本语法练习题(下)
  12. java程序编译命令_使用 java 命令编译运行 java 程序
  13. RequestDispatcher请求转发方法
  14. oracle使用max提升效率,小小小的问题------关于count(*) 和 max(rownum) 效率问题
  15. 蓝桥杯五4史丰收速算
  16. 从一个路由器里面接出一条网线,连接到另一个路由器
  17. 安装Java并配置环境,安装eclipse,在GitHub中上传代码
  18. Android轻松实现日期选择器、生日选择器、自定义起始时间
  19. 2022-2028年全球及中国红外(IR)传感器行业投资前景分析
  20. Datatable 列名

热门文章

  1. android app打开另一个app并触发按钮_Android进程调度:Low memory killer(4)修改版
  2. 地址后面的sessionid怎么消除_水泥地面起灰起砂不平怎么解决?
  3. JavaScript(一)——变量,数据类型及转换、运算符和逻辑结构
  4. mybatisplus逆向工程生成代码
  5. 高考成绩查询2021年莆田市,2021年莆田高考志愿填报系统入口
  6. 从Java直接输出到flume_js生成日志信息及实现java直接调用flume
  7. linux挂载华为存储fc,linux 挂载存储设备
  8. Docker Compose 网络介绍
  9. 程序人生 | 35岁以上的 iOS 程序员都到哪里去了?
  10. 正则表达式的一些符号基础和实例解析