`
OracleX
  • 浏览: 123822 次
  • 性别: Icon_minigender_1
  • 来自: 地球
社区版块
存档分类
最新评论

IO各种流使用清晰区别

    博客分类:
  • J2SE
 
阅读更多
引用:http://www.iteye.com/topic/175121

 IO分两种流

字节流 InputStream OutputStream

字符流 Reader  Writer

他们都是抽象类

具体实现
字节流 FileInputStream  FileOutputStream
字符流 FileReader    FileWriter


字节流转换成字符流可以用 InputSteamReader  OutputStreamWriter

转换成BufferdReader  BufferedWriter 他们具有缓冲区

例如:读取文件 从字节流输入到字符流输入
定义一个字节流: 

FileInputStream fileInputStream = new FileInputStream("d:/text.txt");  // 定义一个指向D:/TEXT.TXT 的字节流

InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
//字节流转换成InputStreamReader

BufferedReader bufferedReader = new BufferedReader(inputSteamReader);
//InputStreamReader 转换成带缓存的bufferedReader

 可以把读出来的内容赋值给字符

String ss = new String();
String s;
while((s = bufferedReader.readLine())!=null){
	ss += s;
}
 例如:写入文件  从字节流输出到字符流输出 

FileOutputStream fileOutputStream = new FileOutputStream("d:/text.txt"); //定义一个

指向D:/TEXT.TXT文件 

OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream);

BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);

bufferedWriter.write(s);

bufferedWriter.close();
outputStreamWriter.close();
fileOutputStream.close();
 
分享到:
评论

相关推荐

    IO流结构图_io_java_思维导图_

    在本篇文章中,我们将深入探讨Java IO流的基本结构、主要类和接口,以及如何使用它们来操作文件。"IO流结构图_io_java_思维导图_" 提供了一个清晰的可视化工具,帮助开发者理解这一复杂主题。 首先,让我们了解一下...

    IO流之思维导图,让你的思路更清晰.mm

    适合复习,有利于你的IO流规范化。

    Java_IO流详解

    - **流的层次结构**:Java的IO流具有清晰的层次结构,使得开发人员可以根据具体需求选择合适的流。例如,`BufferedInputStream`是在`FileInputStream`的基础上增加了缓冲功能,提高了读取效率。 - **国际化支持**:...

    JAVASE,IO流部分模块导图

    而对有经验的开发者来说,这些导图和知识点可以作为快速查阅和回顾的参考工具,特别是在需要使用IO流功能但对具体实现细节记忆模糊时。通过学习和实践,可以熟练掌握Java IO流的各种操作,进行高效的数据传输和文件...

    JavaIO流学习总结.pdf

    最后,Java IO流的设计非常对称,输入流和输出流的对应关系清晰,但也有一些特例,如已废弃的StringBufferInputStream,以及用于特定目的的辅助类,它们并不严格遵循这种对称性。 理解Java IO流的这些核心概念和...

    Java之IO流学习总结.pdf

    Java的IO流是程序与外部数据源之间传输数据的抽象方式,它允许开发者处理各种类型的数据,包括文件、内存、网络连接等。Java的IO流分为两大类:字节流和字符流。字节流处理单个字节的数据,而字符流则处理字符编码,...

    IO流·全部内容···注释清楚·

    标题中的“IO流·全部内容···注释清楚·”意味着我们将全面探讨IO流的各种概念、分类、用法以及相关的示例代码,并确保每个部分都有清晰的注释以便理解。 1. **字节流**: - **InputStream** 和 **OutputStream...

    commons-io-2.4 包含了所有commons-io的jar包和源码

    Apache Commons IO 是一个Java库,专注于提供各种I/O操作的实用工具类,这些操作包括文件、流、过滤器、读写、转换、检测等。在本案例中,我们讨论的是"commons-io-2.4"版本,这个版本包含了完整的Apache Commons IO...

    最简单最好的IO学习资料 源码 注释清晰

    这个压缩包包含了一份详尽的IO学习资料,其中包含了清晰注释的源码,非常适合初学者和有经验的开发者来深入理解Java IO系统。下面将详细阐述Java IO的主要知识点。 1. **流的概念**: Java中的IO操作基于流的概念...

    java IO 类层次图

    本文将通过分析一张清晰明了的Java IO类层次图,详细介绍Java IO体系中的主要类及其关系。 #### 二、Java IO 类层次结构详解 ##### 2.1 字节流类层次结构 Java IO中的字节流类主要分为两大类:`InputStream`和`...

    高级IO_高级IO思维导图_

    在Java编程语言中,"高级IO"通常指的是Java ...通过这份高级IO思维导图,学习者可以清晰地看到各个知识点之间的关系,有助于理解和记忆。在实际开发中,结合示例代码和实践经验,能够更好地掌握和运用这些高级IO技术。

    学生管理系统(IO流存储信息).zip

    《学生管理系统(IO流存储信息)》是一个基于Java技术实现的信息管理系统,主要应用于教育领域的人工智能化实践。在这个系统中,我们重点探讨了如何利用Java的输入/输出(IO)流来有效地存储和处理学生信息,实现了...

    Apache commons-io-2.5.jar

    1. **IOUtils**: IOUtils是Apache Commons IO中的核心类之一,它提供了大量静态方法,用于处理各种输入/输出流。例如,你可以使用IOUtils.copy()方法轻松地将一个输入流的内容复制到一个输出流,或者使用IOUtils....

    搜搜移动大厅(XML/序列化/IO流实现)

    提到的“XML/序列化/IO流实现”是该应用在开发过程中使用的关键技术,下面将对这些技术进行详细阐述。 XML,全称为Extensible Markup Language,是一种可扩展标记语言。它被广泛用于数据交换、配置文件存储以及结构...

    drawio, 软件工程绘图专用,无内置收费功能, 源代码

    例如,使用流程图可以清晰地展示程序的执行步骤,UML图则能帮助设计和分析系统组件之间的关系,数据流图则有助于理解数据处理过程。Drawio提供了丰富的图形库,使得创建这些专业图表变得简单快捷。 此外,Drawio的...

    25_IO_第4天(Properties、序列化流、打印流、CommonsIO)_讲义

    例如,Properties类可以用于管理数据库连接配置,序列化流能帮助你在游戏存档中保存玩家的状态,打印流则有助于编写清晰的控制台输出,而Commons IO库则能使你更高效地处理文件和流。通过深入理解和实践,你将在Java...

    java IO流文件详例

    io流是任何一门语言中都非常重要的技术,繁琐的课本介绍非但不能够解决问题,还会造成很多的混淆 该文件将各个io流功能放到一起呈现,方便新手对比学习,当场实践,也方便老手进行全面的复习回顾。简洁易懂、涵盖...

    java.io详解

    ### Java IO流详解 #### 一、Java IO流概述 ...通过以上详细介绍,我们可以清晰地理解Java IO流的分类、特点及应用原则,同时掌握了`File`类的基本操作方法,这对于日常开发中处理文件和目录操作有着至关重要的作用。

    drawio绘制各种流程图

    本文将详细介绍如何使用Drawio进行各种流程图的绘制。 1. **下载与安装** Drawio提供了多种平台的版本,包括Windows、Mac和Linux。对于Windows用户,你可以通过下载"draw.io-14.9.6-windows-installer.exe"这个...

    前端开源库-pipe-io

    - **链式操作**:pipe-io支持流之间的链式连接,使得数据处理逻辑清晰且易于维护。 - **灵活的插件系统**:库提供了一套插件机制,允许开发者轻松扩展其功能,实现自定义的数据处理。 - **错误处理**:内置的错误...

Global site tag (gtag.js) - Google Analytics