import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
public class test4 {
static public void main(String args[]) {
FileInputStream fis = null;
FileOutputStream fos = null;
ByteBuffer bb = ByteBuffer.allocate(1024);
try {
fis = new FileInputStream("C:\\source.txt");
fos = new FileOutputStream("C:\\copy.txt");
FileChannel fci = fis.getChannel();
FileChannel fco = fos.getChannel();
while (-1 != fci.read(bb)) {
bb.flip();
fco.write(bb);
bb.clear();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (null != fis) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (null != fos) {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
分享到:
相关推荐
- 文件的复制:可以使用FileInputStream和FileOutputStream配合BufferedInputStream和BufferedOutputStream实现高效复制。 - 文件的追加:使用FileWriter的append方法。 - 数据的序列化和反序列化:通过...
- **FileChannel.transferTo/transferFrom**: 使用NIO进行文件复制,效率更高。 综上所述,这段代码示例展示了如何使用Java Swing创建一个简单的图形用户界面,包括文本显示和按钮操作等功能,并涉及到基本的文件...
### Java NIO 原理与使用详解 #### 一、Java NIO 概述 在深入了解 Java NIO 的工作原理及其使用之前,我们首先来了解一下什么是 Java NIO(New I/O)。Java NIO 是 Java SE 1.4 版本引入的一个全新的 I/O API,...
也可能包括I/O流的使用,如NIO(非阻塞I/O)和FileInputStream/FileOutputStream;或者是网络编程,如Socket和ServerSocket的使用,以及TCP/IP和UDP协议的实现;还有可能涉及反射、动态代理、注解处理器等Java的高级...
总结一下,Java的二进制IO类是处理非文本数据的基础,通过使用FileInputStream、FileOutputStream及其相关的缓冲流,我们可以有效地进行文件复制操作。理解这些概念对于任何Java开发者来说都是至关重要的,特别是在...
例如,FileInputStream和FileOutputStream用于文件操作,BufferedReader和PrintWriter用于文本处理,SocketInputStream和SocketOutputStream则服务于网络通信。 Java NIO则在Java 1.4版本中引入,提供了一种非阻塞...
例如,BufferedReader和BufferedWriter用于提高读写效率,FileInputStream和FileOutputStream用于文件操作,DataInputStream和DataOutputStream则支持基本数据类型的读写。FilterInputStream和FilterOutputStream...
例如,`FileInputStream`和`FileOutputStream`就是典型的阻塞IO流。而在NIO中,数据的读写不再通过流,而是通过通道(如`FileChannel`)来完成,通道可以与多个缓冲区进行交互,缓冲区则用于临时存储数据。 NIO的...
例如,FileInputStream和FileOutputStream用于文件操作,SocketInputStream和SocketOutputStream则用于网络数据传输。字符流如BufferedReader和PrintWriter则支持文本数据的读写。此外,FilterInputStream和...
6. **IO/NIO**:在输入输出和网络编程方面,手册提醒开发者注意流的关闭,避免使用FileInputStream/FileOutputStream的直接构造方法,提倡使用try-with-resources语句来自动关闭资源。 7. **设计模式**:手册介绍了...
2. **获取Channel**:通过FileInputStream和FileOutputStream的`getChannel()`方法获取对应的Channel。 3. **分配Buffer**:创建一个ByteBuffer用于存储读取和写入的数据。 4. **读取文件**:使用Channel的`read()`...
#### 示例1:使用FileInputStream和FileOutputStream读写文件 ```java import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class FileIOExample { public ...
3. **高级I/O**:Java的I/O流系统是其一大特色,书中将详细阐述流的层次结构,缓冲流、转换流和对象流的使用,以及File类和FileInputStream/FileOutputStream的文件操作。 4. **反射**:Java反射机制允许程序在运行...
2. 字节流:包括InputStream和OutputStream代表字节输入流和字节输出流,如FileInputStream和FileOutputStream用于文件操作。还有FilterInputStream和FilterOutputStream作为装饰者模式的实现,提供数据过滤和转换...
9. **文件操作**:Java提供了丰富的类库进行文件和目录的操作,如File类和FileInputStream/FileOutputStream,以及NIO(New I/O)框架。 10. **Swing GUI**:对于桌面应用开发,Java的Swing库提供了丰富的组件和...
8. **复制文件**:使用Java NIO的FileChannel可以实现高效的大文件复制,通过transferTo和transferFrom方法。 9. **异常处理**:在进行IO操作时,需要正确处理IOException和其他相关异常,确保程序的健壮性。 10. ...