import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
public class FileChannelDemo {
/**
* FileChannel是用于读取、写入、映射和操作文件的通道。
*
*文件通道在其文件中有一个当前 position,可对其进行查询和修改。
*该文件本身包含一个可读写的长度可变的字节序列,并且可以查询该文件的当前大小。
*写入的字节超出文件的当前大小时,则增加文件的大小;截取 该文件时,则减小文件的大小。
* @throws IOException
*/
public static void main(String[] args) throws IOException {
File in = new File("D:\\in.txt");
File out = new File("D:\\out.txt");
if(in.createNewFile()){
System.out.println("in.txt被创建");
FileOutputStream is = new FileOutputStream(in);
byte[] b = "我一定能行的".getBytes();
is.write(b, 0, b.length);
}
if(out.createNewFile()){
System.out.println("out.txt被创建");
}
FileInputStream is = new FileInputStream(in);
FileOutputStream os = new FileOutputStream(out);
FileChannel fis = is.getChannel();
FileChannel fos = os.getChannel();
ByteBuffer bytedata = ByteBuffer.allocate(100);
while(fis.read(bytedata)!= -1){
//通过通道读写交叉进行。
bytedata.flip();
fos.write(bytedata);
bytedata.clear();
}
fis.close();
fos.close();
is.close();
os.close();
}
}
分享到:
相关推荐
三、文件读写操作 1. **创建文件**:首先,我们需要创建一个`File`对象表示文件路径,然后使用`createNewFile()`方法创建新文件。例如: ```java File file = new File(Environment.getExternalStorageDirectory...
在IT行业中,文件读写操作是程序开发中的基础部分,特别是在处理数据存储、日志记录、文件传输等场景。本文将结合标题“文件读写操作小结”和提供的标签“源码”、“工具”,深入探讨文件读写的核心概念、常见方法...
以上就是Android平台上的文件读写操作的基本方法和注意事项。通过了解这些知识,开发者可以有效地在Android设备上存储和读取数据。在实际项目中,还需要结合具体需求,考虑数据安全、文件同步、性能优化等方面的问题...
根据提供的标题、描述以及部分上下文内容,我们可以深入探讨Java中进行文件读写操作的不同方法,并对其进行比较分析。本文将重点介绍几种常见的用于文件读写的API,并解释它们之间的区别。 ### 一、Java中文件读写...
6. **使用FileChannel进行大文件读写** 对于大文件,`java.nio` 包中的 `FileChannel` 提供了高效且内存友好的读写方式。例如: ```java FileChannel inChannel = FileChannel.open(Paths.get("binaryfile.bin"),...
对于文件读写,Java提供了多种流类。基础的文件读取可以使用`BufferedReader`和`FileReader`组合,而写入则使用`BufferedWriter`和`FileWriter`。以下是一个简单的读写示例: ```java // 读取文件 FileReader fr = ...
`RandomAccessFile`允许我们在文件的任意位置进行读写,而`FileChannel`则通过NIO(非阻塞I/O)提供高效的数据传输。 文件传输,特别是在网络环境下,通常涉及`java.nio`包中的类,如`SocketChannel`和`FileChannel...
在Java编程语言中,文件操作是日常开发中的基础...通过学习和实践这些知识点,开发者可以熟练地在Java中处理文件读写操作,适应各种场景的需求。记得在实际项目中根据具体情况选择最适合的API,以实现最佳性能和效率。
Java NIO提供了一种高效、灵活的文件操作方式,通过Buffer、Channel、Paths和Files等核心组件,可以实现复杂的文件读写操作。NIO的异步操作特性也使得它在处理大量并发文件操作时具有显著的性能优势。在实际开发中,...
在Java层,Android提供了`java.io`和`java.nio`包来处理文件读写。`java.io.File`类用于文件和目录的操作,如创建、删除、重命名、获取属性等。`java.nio`提供了一种更高效、更现代的文件I/O方式,例如使用...
下面将详细介绍Java中进行文件读写操作的相关知识点。 1. **基本概念**: - **InputStream** 和 **OutputStream**:这是Java I/O系统的基本类,分别用于处理数据的输入和输出。 - **Reader** 和 **Writer**:这是...
例如,FileChannel用于文件操作,可以通过FileChannel.transferTo() 或 transferFrom() 进行文件的高效复制。 9. **nio.2(Java 7引入)** NIO.2进一步增强了文件操作能力,增加了Path、Files、FileSystem等类,...
综上所述,"1K空间快速读写文件工具类"是一个利用Java技术进行高效文件操作的实现,它通过各种优化手段,如缓冲、并行处理、内存映射等,实现了在有限内存资源下的高速文件读写,大大提升了程序性能。这个工具类的源...
下面将详细介绍如何使用Java进行Windows文件操作。 1. **Java IO基础** - **File类**: `java.io.File`是Java中最基础的文件操作类,可以用来表示文件或者目录路径。通过`new File(String path)`构造一个File对象,...
下面将对Java文件操作进行详细的总结,并提供相关的示例。 1. **File类**:Java中的`File`类是所有文件和目录操作的基础。它提供了创建、删除、重命名文件和目录的方法,以及获取文件属性如大小、最后修改时间等。...
它允许我们设置读写指针的位置,然后进行读写操作。例如: ```java try (RandomAccessFile file = new RandomAccessFile("file.txt", "rw")) { file.seek(5); // 将指针移动到第5个字节 int byteRead = file....
总的来说,Java通过丰富的类库为文件操作提供了强大的支持,无论是简单的文本文件读写,还是复杂的文件系统遍历和管理,都可以通过这些类和接口轻松实现。在实际开发中,根据需求选择合适的API,结合异常处理和性能...
3. **文件读写**:使用FileInputStream和FileOutputStream进行基本的文件读写操作。例如,`new FileInputStream(file)`创建输入流,然后通过`read()`方法读取字节;`new FileOutputStream(file)`创建输出流,用`...
10. **异常处理**: 在进行文件操作时,必须考虑到可能出现的异常,如`FileNotFoundException`、`IOException`等,并通过适当的异常处理机制进行捕获和处理。 在实际开发中,理解并熟练掌握这些知识点是至关重要的,...
在实际应用中,如果需要频繁进行文件复制操作,还可以考虑使用Java NIO库中的新API,如FileChannel,它提供了一种更加高效的文件操作方式,支持直接对文件内的任意位置进行读写操作,适合于需要高性能的文件处理场景...