- 浏览: 554870 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (277)
- wap (9)
- 小技巧 (8)
- Spring (7)
- IT应用 (8)
- web (29)
- Hibernate (14)
- j2se (20)
- Struts2 (9)
- 数据库 (12)
- 异常总结 (4)
- ssh整合 (3)
- 生活 (3)
- Maven (2)
- JDBC (3)
- svn (1)
- ibatis (4)
- JavaMail (2)
- linux (2)
- Thrift (1)
- xml (3)
- SpringMVC (1)
- Jquery EasyUI (1)
- dwr (3)
- 地图 (16)
- poi (3)
- FusionCharts (1)
- Android基础 (46)
- 树 (2)
- Extjs (1)
- 公务员考试 (2)
- Android进阶 (41)
- Android分享 (3)
- Android软件 (1)
- 自动化测试 (4)
- Android工具类 (6)
- Android底层 (1)
最新评论
-
d199212:
引用引用[u][/u]
高德地图创建自定义覆盖物 -
lyuaong2010:
这做法不错,百度地图 提供的拉框获取不到矩形的几点
百度地图封装实现拉框效果 -
Allen_J_Will:
...
我的“天气宝”上线啦 -
chenzheng8975:
王太阳 写道你这根本就不出来,,你漏了几个地方...例子只做参 ...
ztree学习之异步加载节点 -
chenzheng8975:
王太阳 写道你这根本就不出来,,你漏了几个地方... 有图有真 ...
ztree学习之异步加载节点
在整个IO包中,流的操作分为两种:
·字节流
|·字节输出流OutputStream、字节输入流InputStream
·字符流: 一个字符 = 两个字节
|·字节输出流Writer,字节输入流Reader
IO操作的基本步骤:
1、使用File找到一个文件
2、使用字节流或字符流的子类为OutputStream、InputStream、Writer、Reader进行实例化操作
3、进行读写的操作
4、关闭:close(),在流的操作中最终必需进行关闭。
字节输出流: OutputStream
在Java io中OutputStream是字节输出流的最大父类。 此类是一个抽象类,所以使用时修要依靠子类进行实例化操作。 如果此时要完成文件的输出操作,则使用FileOutputStream为OutputStream进行实例化操作:
OutputStream out = new FileOutputStream(File f)
OutputStream提供了一下的写入数据的方法:
·写入全部字节数组:pubic void writer (byte[] b)throws IOException
·写入部分字节数组:public void writer(byte[] b ,int off,int len)throws IOException
·写入一个数据:public abstract void writer (int b)throws IOException
import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; public class OutputStreamDemo02 { public static void main(String[] args) throws Exception { File file = new File("d:" + File.separator + "demo.txt"); // 要操作的文件 OutputStream out = null; // 声明字节输出流 out = new FileOutputStream(file); // 通过子类实例化 String str = "hello world"; // 要输出的信息 byte b[] = str.getBytes(); // 将String变为byte数组 for (int i = 0; i < b.length; i++) { out.write(b[i]); // 写入数据 } out.close(); // 关闭 } }
如果要向文件中追加内容则需要调用FileOutputStream类的另外一个构造方法: pubic OutputStream(File file ,booleam append) throws FileNotFoundException,如果将append的内容设置为true,则表示增加内容。
字节输入流: InputStream
使用InputStream可以读取输入流的内容 此类也是一个抽象类,同样需要使用子类对象进行实例化,如果现在是文件操作则使用 FileInputStream, ·FileInputStream的构造方法:
public FileInputStream(File file) throws FileNotFoundException
·将内容读入字节数组中:pubic int read(byte[] b)throws IOException
·每次读入一个数据:public abstract void read (int b)throws IOException
字符输出流:Writer Writer类是IO包中操作字符的最大父类,主要功能是完成字符流的输出。 Writer类同OutputStream类一样,都属于抽象类,如果要进行文件的保存,则使用FileWriter类进行实例化。 写入操作:public void write(String str)throws IOException,不用再将String转换为byte 字符输入流:Reader Reader与OutputStream的不同的是使用的是char数组 Reader是一个抽象类,进行文件读取要使用FileReader 读取的方法: ·读取一组字符:public int read(char[] cbuf)throws IOException ·读取一个个字符public int read() throws IOException 字节流和字符流的区别: 字节流在操作的时候是直接与文件本身关联,不使用缓冲区 |·字节流——>文件 字符流在操作的时候是通过缓冲区与文件关联 |·字节流——>缓冲区——>文件 综合比较,在传输或者在硬盘上保存的内容都是以字节的形式存在的,所以字节流的操作比较多,但是在操作中文的时候字符流比较好使
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
public class InputStreamDemo02 {
public static void main(String[] args) throws Exception {
File file = new File("d:" + File.separator + "demo.txt"); // 要操作的文件
InputStream input = null; // 字节输入流
input = new FileInputStream(file);// 通过子类进行实例化操作
byte b[] = new byte[(int)file.length()];// 开辟空间接收读取的内容
for(int i=0;i<b.length;i++){
b[i] = (byte)input.read() ; // 一个个的读取数据
}
System.out.println(new String(b)); // 输出内容,直接转换
input.close(); // 关闭
}
}
import java.io.File;
import java.io.FileWriter;
import java.io.Writer;
public class WriterDemo01 {
public static void main(String[] args) throws Exception {
File file = new File("d:" + File.separator + "demo.txt"); // 要操作的文件
Writer out = null; // 声明字符输出流
out = new FileWriter(file); // 通过子类实例化
String str = "hello world"; // 要输出的信息
out.write(str); // 写入数据
out.close(); // 关闭
}
}
import java.io.File;
import java.io.FileReader;
import java.io.Reader;
public class ReaderDemo02 {
public static void main(String[] args) throws Exception {
File file = new File("d:" + File.separator + "demo.txt"); // 要操作的文件
Reader input = null; // 字节输入流
input = new FileReader(file);// 通过子类进行实例化操作
char b[] = new char[(int)file.length()];// 开辟空间接收读取的内容
for(int i=0;i<b.length;i++){
b[i] = (char)input.read() ; // 一个个的读取数据
}
System.out.println(new String(b)); // 输出内容,直接转换
input.close(); // 关闭
}
}
发表评论
-
java批量修改文件名称
2015-01-05 19:47 1631import java.io.File; publ ... -
java正则表达式学习
2014-04-23 11:26 808常用的元字符:. 匹配除换行符以外的任意字符\w 匹配字母 ... -
java常用小技巧汇总
2014-01-19 17:18 9061.java实现日期加上天数: public stati ... -
图片Base64位加密解密算法
2013-07-14 10:24 1840import java.io.FileInputStream ... -
java以流的方式上传文件
2013-07-14 10:03 2179因为byte数组最大存储值不超过64M,所以当一个文件大于6 ... -
java实现AES算法加密解密
2013-06-30 11:15 1419package com.cz.test1; impor ... -
javaIO学习之File
2012-12-23 16:47 1109创建文件: import java.io.File; im ... -
java面试题汇总
2012-12-23 14:57 914java面试题汇总,附件已上传。写的很好啊! -
java开发备注说明
2012-12-06 11:40 1075菜单 Window->Preference 打开参数设 ... -
java基础学习笔记
2012-10-16 14:57 10511."=="和equals方 ... -
java的日期和时间
2012-09-20 10:59 1124package com.cz.test; import ... -
java单例模式
2012-09-12 10:21 1116一是某个类只能有一个实例 ; 二是它必须自行创建这 ... -
MD5加密实例
2012-09-11 16:21 1761实例一: 加密工具类: package com.cz. ... -
java集合学习之Collections类
2012-08-28 09:46 1191Collections是个java.util下的类,它包含有各 ... -
java集合学习之Map集合
2012-08-24 10:40 1197Map集合没有继承Collection接口,其提供的是key到 ... -
java集合学习之Set集合
2012-08-22 22:24 1222Set: 一个不包含重复元素的 collection。更 ... -
java集合学习之List集合
2012-08-22 14:24 7231Collection接口是List接口和Set接口的父接口,该 ... -
将从控制台输入的数据保存到记事本中
2012-08-20 22:23 1375注: 在读写流(stream)的时候,数据是先被读到了内存中 ... -
java io流学习的小结
2012-07-30 11:36 1249流的分类: 按流 ...
相关推荐
Java IO系统分为两大类:字节流和字符流。字节流主要用于处理任何类型的原始数据,如图片、音频文件或者二进制文件,而字符流则专注于处理基于文本的数据。本文将深入探讨这两类流的原理、用途以及它们之间的关联。 ...
2、常用21个IO流:FileWriter、FileReader、...3、JAVA IO流经典代码示例,示例从易到难。代码功能涉及字节、字符、字符串、文本文件、图片、音频、视频。演示错误用法和经典用法。 4、代码的结构可查看README文件。
在Java中,IO流分为两大类:字节流和字符流,每种流又有输入流和输出流之分,分别用于数据的读取和写入。 1. **字节流**: - 字节流处理的是8位的字节数据,是最基本的流类型。Java中的`InputStream`和`...
本教程将详细介绍Java IO中的字节流、字符流、缓冲流以及转换流,并通过IODemo实例来展示它们的用法。 ### 1. 字节流 字节流是Java中最基础的流类型,用于处理以字节为单位的数据。字节流分为输入流(InputStream...
### Java IO字符流和字节流详解 #### 一、引言 在Java编程中,输入输出(简称IO)操作是十分重要的一个方面。通过IO操作,我们可以读取文件、网络数据、用户输入等,也可以将数据写入到文件、网络、控制台等。Java...
### Java字符流和字节流详解 #### 一、引言 在Java中,I/O流主要用于处理输入输出操作,包括文件读写等。根据处理数据类型的不同,Java I/O流主要分为字节流和字符流两大类。字节流处理的是8位的字节数据,而字符流...
总的来说,IO流是Java编程中不可或缺的一部分,理解和熟练运用字节流、字符流和文本流能帮助我们高效地处理数据输入和输出,为各种复杂的应用场景提供支持。在实际开发中,要根据数据类型和需求选择合适的流,并利用...
Java中的字节流和字符流是IO操作中的两种基本类型,它们主要用于数据的输入和输出。字节流处理的数据单位是字节,而字符流处理的是Unicode字符。 字节流: 字节流主要由两个核心类构成:`InputStream`和`...
转换流:在字节流和字符流之间,Java提供了解决两者不兼容问题的转换流,即InputStreamReader和OutputStreamWriter。InputStreamReader是字节输入流到字符输入流的桥梁,而OutputStreamWriter则是字节输出流到字符...
本文件包“io流详解,字符流和字节流代码”显然是针对Java IO流的深入学习资源,包含了代码示例和可能的可视化解释。 IO流分为两大类:字节流(Byte Stream)和字符流(Character Stream)。字节流处理的是8位的数据...
Java 字节流与字符流的介绍 Java 中的流操作可以分为两种:字节流和字符流。字节流是指以 byte 为单位进行读写操作的流...Java 的流操作分为字节流和字符流两种,字节流是最基本的,字符流是为了处理字符而提出来的。
Java的IO流是按照数据的流向分为输入流和输出流,按照数据类型分为字节流和字符流。字节流处理的是二进制数据,适用于任何类型的文件,包括文本文件和非文本文件(如图片、音频、视频等)。字符流则用于处理字符数据...
在Java编程语言中,字节流(Byte Stream)和字符流(Character Stream)是处理输入输出数据的两种基本方式。字节流主要用于处理任何类型的二进制数据,如图片、音频、视频等,而字符流则专为处理基于Unicode编码的...
过滤字符流,如InputStreamReader和OutputStreamWriter,用于在字节流和字符流之间转换。 二、字符集 字符集是表示字符的规则集合,Java使用Unicode字符集。常见的字符集有ASCII、GBK、UTF-8等。在Java中,字符流...
通过阅读和理解这些代码,我们可以深入学习如何在Java中运用字节流和字符流进行文件操作,以及如何在需要时进行两者之间的转换。 总的来说,字节流和字符流是Java I/O系统的重要组成部分,理解它们的工作原理和应用...
Java IO库提供了丰富的类和接口来支持不同类型的流,包括字节流、字符流、对象流、缓冲流、转换流以及过滤流等。 字节流(Byte Stream)是处理原始二进制数据的流,分为输入流和输出流。InputStream和OutputStream...
在Java IO中,主要有两种流的概念:字符流(Character Stream)和字节流(Byte Stream)。它们是处理数据的基本方式,适用于不同场景。 字符流主要处理基于字符的数据,如文本文件,它包括Reader和Writer两个抽象...
在Java中,流分为字节流和字符流两大类,它们都是抽象的概念,用于表示数据流动的方向。字节流处理的数据单位是字节,而字符流处理的是Unicode编码的字符。 一、字节流 字节流分为输入流和输出流,Java中最基础的...
Java提供了两种主要的IO流类型:字节流(Byte Stream)和字符流(Character Stream)。这两个概念是Java IO体系的基础,也是程序员在处理数据传输时经常遇到的工具。本练习文档将帮助你深入理解并熟练掌握这两种流的...