`

通过自定义缓冲区提高IO操作效率

 
阅读更多
/***************************************************************************
	 * 通过自定义缓冲区提高IO操作效率
	 * 
	 * @param fileFrom
	 * @param fileTo
	 */
	public static void readWriteArray(String fileFrom, String fileTo) {
		InputStream in = null;
		OutputStream out = null;

		try {
			in = new FileInputStream(fileFrom);
			out = new FileOutputStream(fileTo);

			int length = in.available();
			byte[] totalBytes = new byte[length];
			out.write(totalBytes);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (in != null) {
					in.close();
					in = null;
				}
				if (out != null) {
					out.close();
					out = null;
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
1
1
分享到:
评论
1 楼 beneo 2010-06-02  
首先,avalible 返回不是一个准确值
其次, bufferedOutputStream 就可以自定义 buffered

相关推荐

    利用缓冲区提高Java应用程序的IO性能

    ### 利用缓冲区提高Java应用程序的IO性能 #### 摘要与背景介绍 Java作为一门具有跨平台特性的编程语言,在多个领域都获得了广泛的应用。随着Java应用的不断扩展,其性能问题逐渐成为人们关注的重点,尤其是输入...

    Go-Go中的线程安全循环缓冲区环形缓冲区实现了io.ReaderWriter接口

    总之,通过实现`io.Reader`和`io.Writer`接口,线程安全的环形缓冲区成为了Go语言中一种强大的工具,可以在多线程环境中提高数据处理的效率和安全性。这使得它在各种并发场景下,如并发I/O、数据管道等,都有广泛的...

    java字符流缓冲区详解

    Java 字符流缓冲区是 Java 中用于提高 IO 操作效率的一种机制,它通过在内存中缓存一部分数据,然后批量写入或读取,以提高流的读写效率。在 Java 中,BufferedReader 和 BufferedWriter 是两个常用的缓冲类,它们...

    Java IO

    通过缓冲区,可以有效地管理数据流,提高I/O效率。 ### 通道(Channel) 通道是NIO中另一个核心概念,它代表了与通道另一侧实体进行交互的连接。通道类似于传统的流,但是通道可以进行异步I/O操作。此外,通道可以是...

    Efficient IO with io_uring

    1. **提交队列和完成队列**:io_uring的核心设计是通过两个环形缓冲区——提交队列(SQ, Submission Queue)和完成队列(CQ, Completion Queue)——来实现异步I/O。应用将请求放入提交队列,内核在后台处理完成后将...

    commons-io-2.6.jar下载

    通过使用缓冲区,可以减少对底层 I/O 操作的调用次数,提高性能。 4. **文件比较**: - `FileCompare` 类提供了文件或目录的比较功能,如 `contentEquals()` 方法可以比较两个文件的内容是否相同。 5. **文件过滤...

    commons-io 包

    3. **缓冲区操作**:`BufferedInputStream` 和 `BufferedOutputStream` 是I/O操作中常用的类,可以提高数据读写效率。`BufferedReader` 和 `BufferedWriter` 对于字符流也有类似的功能。 4. **转换和编码**:`...

    commons-io-2.4.jar包 官方免费版

    7. **缓冲区操作**:提供了`BufferedInputStream`和`BufferedOutputStream`的增强版本,提高了读写性能。 8. **路径处理**:提供了处理路径名的工具,包括解析、合并、规范化路径。 在开发环境中,如Eclipse和...

    commons-io-2.0.1-doc

    4. **缓冲区**:`BufferedInputStream` 和 `BufferedOutputStream` 的包装类提供了缓冲功能,提高了读写效率。还有 `BufferedReader` 和 `BufferedWriter`,它们提供了更高级的文本缓冲。 5. **过滤器**:通过 `...

    commons-io-2.4-src.zip

    通过深入学习Apache Commons IO 2.4的源代码,我们可以了解到Java IO编程的最佳实践,理解其内部实现机制,从而提高我们的代码质量和效率。此外,源码中的注释和测试用例也是宝贵的参考资料,有助于我们更好地理解和...

    commons-io-2.4

    在处理I/O操作时,缓冲区(Buffer)的使用是常见的优化手段,它能够减少对磁盘或网络的直接访问次数,提高性能。在Commons IO中,库可能会自动管理这些缓冲区,比如在读写文件或处理流时,会根据需要创建并填充缓冲...

    C语言作业,自己实现的一个IO库代替操作系统stdio,包含readfile、appendfile、input、print等

    - 安全性:避免可能导致缓冲区溢出的操作,如不恰当的字符串处理。 - 性能优化:考虑使用缓冲技术提高读写效率。 通过以上分析,我们可以看到这个C语言作业实际上是对文件操作的深入理解和实践,涵盖了文件的打开...

    commons-io-1.4

    8. **线程安全的缓冲区**:`BufferedRandomAccessFile` 提供了一个线程安全的随机访问文件缓冲区。 9. **对象序列化**:`SerializationUtils` 提供了对象的序列化和反序列化功能,简化了对象持久化的操作。 10. **...

    commons-io-2.2-bin.zip

    这个库包含了大量实用工具类,简化了对文件、流、字符集、缓冲区、读写操作等的处理。标题中的"commons-io-2.2-bin.zip"指的是Apache Commons IO库的2.2版本的二进制发行版,通常包含jar文件和其他资源。 在 ...

    使用缓冲流快速复制文件

    然而,如果你需要更细粒度的控制,如自定义缓冲区大小或进行其他特定操作,使用上述手动复制的方法更为合适。 总之,使用缓冲流在Java中复制文件是提高效率的有效手段,尤其在处理大量数据时。通过合理地使用缓冲流...

    java基础——IO流及File-RandomAccessFile对象.docx

    #### 使用自定义缓冲区提高效率 另一种更高效的读取文件的方式是使用自定义缓冲区。这种方式可以减少磁盘I/O次数,从而提高读取速度。下面的示例展示了如何使用`char[]`数组作为缓冲区来读取文件内容: ```java ...

    基于异步IO的socket通信程序

    例如,通过设置合理的缓冲区大小,可以提高数据传输效率;使用线程池管理客户端请求,防止过多的并发导致资源耗尽;以及使用非阻塞模式,避免不必要的等待。 总之,基于异步IO的socket通信程序设计是一种高效处理...

    commons-io-1.4.rar_commons io_commons-io-1.4_commons-io-1.4.jar

    3. **缓冲区操作**:`BufferedInputStream` 和 `BufferedOutputStream` 可以提高数据读写的效率。 Commons IO还提供了`BufferedReader`和`BufferedWriter`的实用工具方法,便于进行字符缓冲读写。 4. **数据转换**...

    IO总结文档

    例如,使用BufferedInputStream和BufferedOutputStream进行文件复制时,可以通过连续读写缓冲区来提高效率。 在实际开发中,我们可能需要调整Java虚拟机(JVM)的最大内存。Eclipse中,可以在Run Configuration的...

Global site tag (gtag.js) - Google Analytics