InputStream和 OutputStream是基类,子类具有不同的特性。能够将流进行混和和匹配(也就是将流的功能进行组合)是java流的特性。
InputStream, OutputStream,FileInputStream,FileOutputStream:只能读写字节
Buffered~:提供缓存功能
Data~:提供读写java类型功能。
PushBackInputStream:提供预读取功能。可以将读出来的数据扔回去。
RandomAccessFile:可以在文件的任何位置进行读和写数据。打开文件时,原来的文件不会被删除。(而DataOutputSream会删除原来文件)。
文本流(字符流):通过Unicode编码进行读写。由于大多数环境都有自己的字符编码,如果以Unicode编码格式写入一个文本文件,可能使用该环境的工具无法正常打开文件。所以Reader和Writer是Unicode编码和本地操作系统使用的字符编码的桥梁。
Reader和Writer是基类。
InputStreamReader:将那些采用特殊字符编码方案的字节输入流转换为Unicode字符来读取。
OutputStreamWriter:把Unicode字符流转换成彩特殊字符编码方案的字节流。
内存映射文件:速度很快,而且可以对文件内容随机访问。
FileInputStream in = new FileInputStream(filename);
FileChannel channel = in.getChannel();
int length = (int)channel.size();
MappedByteBuffer buffer = channel.map(FileChannel.MapMode.READ_ONLY, 0, length);
for(int p = 0; p < length; p++){
int c = buffer.get(p);
}
分享到:
相关推荐
Java IO流是Java平台核心特性之一,它负责在程序与外部资源之间传输数据。这个概念在Java编程中至关重要,因为它提供了处理输入(读取)和输出(写入)的机制,无论是从键盘、文件、网络还是其他数据源。在本文中,...
JAVA_IO流学习总结
本学习笔记主要涵盖了Java的基础知识,包括面向对象、集合、IO流、多线程、反射与动态代理以及Java 8的新特性等方面,旨在帮助初学者或有经验的开发者巩固和提升Java编程技能。 1. 面向对象(OOP):Java的核心是...
在Java入门阶段,学习者需要掌握Java基础语法、数据类型、流程控制、数组、面向对象、方法重载、封装、继承、多态、抽象类、接口、枚举、常用类、String、日期时间、集合类、泛型、注解、异常处理、多线程、IO流、...
在学习输入/输出流时,了解这些分类及其用途至关重要。 1. **字节流和字符流** - **字节流**:处理数据的基本单位是8位的字节,适用于处理二进制数据,如图像或音频文件。字节流分为输入流(InputStream)和输出流...
Java的学习涵盖了许多方面,包括基础语法、类与对象、异常处理、集合框架、IO流、网络编程、多线程、数据库操作、Swing GUI、JavaFX、框架技术以及JVM优化等。 1. 基础语法:Java的基础语法包括变量声明、数据类型...
这个"java文件流学习实验"显然是一系列用Java编写的实验,目的是深入理解和掌握文件流的概念和应用。实验中的代码文件(Test11.java、Test12.java等)很可能包含了不同类型的文件流操作示例,如读取、写入、复制和...
java入门学习视频 java一些基础性的知识 数组集合 I/o流等等 java入门学习视频 java一些基础性的知识 数组集合 I/o流等等
总之,Java工作流源码的学习是一个深入了解业务流程自动化、提升软件开发效率的过程。通过熟悉BPMN标准、选择合适的工作流框架以及深入研究源码,开发者可以更好地理解和应用工作流技术,为企业信息化建设贡献力量。
这份"Java语言学习资料"包含的详细内容可能涵盖了Java的基础语法、面向对象编程概念、异常处理、集合框架、多线程、网络编程、IO流、数据库连接以及Java EE相关的Web开发等内容。 1. **基础语法**:Java的基础语法...
Java IO流是Java编程语言中处理输入...通过深入学习和理解IO流,开发者可以更好地掌握数据的读取、写入和传输,提升程序的效率和功能。同时,熟悉相关工具和配置文件的使用也能帮助开发者在实际项目中更加得心应手。
【Java学习笔记Markdown版】是针对Java初学者和进阶者的一份详尽教程,以Markdown格式编写,便于阅读和整理。Markdown是一种轻量级的标记语言,它允许用户使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML...
在本项目中,"基于Java的视频流处理(原创)"是一个使用Java技术进行实时视频流处理的应用。这个项目的核心是实现一个基本的哈哈镜效果,并结合了第三方库来完成人脸检测以及对人脸的图像遮挡功能。在创新实践项目课...
通过运行这些示例,你可以直观地理解IO流的工作原理,并学习如何在实际项目中运用。 总结来说,Java的IO流是一个庞大且重要的主题,涵盖了数据的输入、输出、缓冲、转换等多个方面。对于初学者而言,理解和掌握IO流...
在学习JAVA编程之前,需要掌握JAVA语言基础知识,包括异常、IO流、多线程、集合类、数据库等。同时,需要选择合适的开发工具,例如Eclipse,并推荐一些优秀的书籍,例如《Java编程思想》、《CoreJava2》、《Java ...
Java的IO流系统是处理数据输入和输出的关键部分,包括字节流和字符流,以及缓冲流、转换流、对象流等。此外,NIO(非阻塞I/O)和文件操作也是这部分的重要内容。了解并熟练运用各种流类,能有效地处理文件读写、...
5. **输入输出流**:Java 的 I/O 流用于读写文件和网络通信,课程将介绍 File 类、Scanner 类以及各种流的概念,帮助学习者理解数据的输入输出操作。 6. **线程与并发**:Java 对多线程提供了强大的支持,课程会...
5. **IO流与NIO**:Java的IO流和NIO(非阻塞I/O)用于读写数据,笔记会介绍文件操作、网络通信、数据传输等场景下的使用方法。 6. **多线程**:Java提供了内置的多线程支持,笔记会讲解线程的创建、同步、通信等,...
学习Java IO流时,理解各种流之间的关系和用途至关重要。例如,知道何时使用字节流和字符流,如何利用缓冲流提高性能,以及如何通过转换流处理不同字符编码等问题。此外,掌握异常处理策略也是关键,因为IO操作常常...