package cn.itcast.p7.io.bytestream.test;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class CopyMp3Test {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
copy_4();
}
// 千万不要用,效率没有!
public static void copy_4() throws IOException {
FileInputStream fis = new FileInputStream("c:\\0.mp3");
FileOutputStream fos = new FileOutputStream("c:\\4.mp3");
int ch = 0;
while((ch =fis.read())!=-1){
fos.write(ch);
}
fos.close();
fis.close();
}
//不建议。
public static void copy_3() throws IOException {
FileInputStream fis = new FileInputStream("c:\\0.mp3");
FileOutputStream fos = new FileOutputStream("c:\\3.mp3");
byte[] buf = new byte[fis.available()];
fis.read(buf);
fos.write(buf);
fos.close();
fis.close();
}
public static void copy_2() throws IOException {
FileInputStream fis = new FileInputStream("c:\\0.mp3");
BufferedInputStream bufis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream("c:\\2.mp3");
BufferedOutputStream bufos = new BufferedOutputStream(fos);
int ch = 0;
while((ch=bufis.read())!=-1){
bufos.write(ch);
}
bufos.close();
bufis.close();
}
public static void copy_1() throws IOException {
FileInputStream fis = new FileInputStream("c:\\0.mp3");
FileOutputStream fos = new FileOutputStream("c:\\1.mp3");
byte[] buf = new byte[1024];
int len = 0;
while((len=fis.read(buf))!=-1){
fos.write(buf,0,len);
}
fos.close();
fis.close();
}
}
分享到:
相关推荐
- **FileInputStream/FileOutputStream**:用于直接读写文件的字节流。 - **FileReader/FileWriter**:用于读写文本文件的字符流。 7. **网络流**: - **Socket/ServerSocket**:在网络通信中,Socket用于建立...
本课程由IT十八掌徐培成讲解,重点介绍了Java基础中的字节流操作,特别是`FileInputStream`和`FileOutputStream`这两个核心类的使用。 `FileInputStream`和`FileOutputStream`是Java.io包下的核心类,它们分别代表...
用来操作图像,声音,视频等原始字节流。 | |--FilterOutputStream/:包含一些输出流,重写那些将请求传递给包含输出流OutputStream的所有方法。 | 其子类可以进一步重写这些方法并额外提供方法和字段。 |--...
- 创建或打开文件:使用 `new File("filename")` 创建一个文件对象,然后通过 `new FileInputStream(file)` 或 `new FileOutputStream(file)` 打开文件。 - 实例化流对象:创建输入/输出流实例,如 `InputStream in ...
- 文件流:FileInputStream/FileOutputStream的使用。 - 缓冲流:BufferedReader/BuffereWriter的性能优化。 - 转换流:InputStreamReader/OutputStreamWriter在字节流和字符流之间的转换。 7. **网络编程**: ...
- 文件操作:File类的使用,以及FileReader/Writer、FileInputStream/FileOutputStream的读写操作。 - 流的分类:字节流和字符流,输入流和输出流。 - 缓冲流:BufferedReader和BufferedWriter的性能优化。 - ...
这些类库包括了处理字节流(Byte Stream)、字符流(Character Stream)以及转换流(Translating Stream)等。 1. 字节流: - InputStream:字节输入流,作为所有字节输入流的超类,用于读取原始字节数据。例如: ...
- 字节流: FileInputStream/F FileOutputStream(文件操作),System.in/out/err(标准输入输出错误流),ByteArrayInputStream/OutputStream(内存操作)。 - 字符流: FileReader/F FileWriter(文件操作),...
Java IO(Input/Output)是Java编程语言中用于处理输入和输出操作的重要组成部分。它提供了一种机制,允许程序与外部资源(如文件、网络、硬件设备等)进行数据交换。在Java中,流(Stream)是IO系统的核心概念,...
Java IO流中的File类提供了文件的创建、删除、重命名等操作,FileInputStream和FileOutputStream则用于文件的读写。 9. **NIO(New IO)** NIO(非阻塞I/O)是Java 1.4引入的新特性,提供了一种新的I/O模型,它...
- `FileInputStream` 和 `FileOutputStream`:从/向文件中读取/写入数据。 - `PipedInputStream` 和 `PipedOutputStream`:用于线程间的通信。 - `SequenceInputStream`:合并多个输入流。 - `FilterInputStream...
关于IO流的知识点 ### 一、IO流的三种分类方式 #### 1.... - **输入流**:用于从...了解这些基本概念和方法有助于更好地管理和操作文件及数据。在实际开发中,根据不同的需求选择合适的流类型和操作方法是非常重要的。
- 文件流:FileInputStream/FileOutputStream,FileReader/FileWriter的使用。 - 缓冲流:提高读写效率,BufferedInputStream/BufferedReader等。 - 转换流:InputStreamReader/OutputStreamWriter,字符集转换。...
- 这是最基础的文件读写方式之一,适用于处理字节流。 - 优点:简单易用,适用于大多数情况。 - 缺点:功能相对有限,不支持缓冲或字符编码转换等功能。 - **BufferedReader/BufferedWriter** - 使用这些类可以...
Java的I/O流系统主要由两个核心接口构成:InputStream和OutputStream用于处理字节流,Reader和Writer则用于处理字符流。这些接口提供了基本的读写方法,例如read()和write(),允许程序从输入源读取数据或向输出目标...
- 文件流:FileInputStream/FileOutputStream用于读写文件,FileReader/FileWriter处理文本文件。 - 缓冲流:BufferedInputStream/BufferedOutputStream/BufferedReader/BufferedWriter提高读写效率。 - 转换流:...
- 文件操作:File类和FileInputStream/FileOutputStream等。 - 缓冲流:BufferedReader/BufferedWriter等提高效率。 - 转换流:InputStreamReader/OutputStreamWriter连接字节流和字符流。 9. **多线程** - ...
- 文件输入/输出流:FileInputStream/FileOutputStream用于读写文件,FileReader/FileWriter处理字符文件。 6. **网络编程** - Socket编程:基于TCP的Socket通信,ServerSocket接收客户端连接,Socket建立客户端...
- **FileInputStream/FileOutputStream**:用于读取或写入文件中的字节流。 - **ByteArrayInputStream/ByteArrayOutputStream**:用于在内存中处理字节数组的流。 - **BufferedInputStream/BufferedOutputStream**:...