IO流05_OutputStream和Writer输出流
【输出流中的字节流和字符流】
【OutPutStream和Writer】
[ OutputStream和Writer中包含的方法 ]
void write(int c) 将指定的字节/字符输出到输出流中,其中c既可以是字节,也可是字符
void read( byte[] buf ) / void read( char[] buf ) 将字节/字符数组中的数据输出到指定的输出流中
void read( byte[] buf, int off, int len ) / void read( char[] buf, int off, int len ) 将字节/字符数组中的数据从off位置开始,长度为len的字节/字符输出到输出流中。
[ Writer特有的两个方法(针对String类型的数据) ]
void write( String str ) 将str字符串中包含的字符输出到指定的输出流中
void write( String str, int off, int len ) 将str字符串里从off位置开始,长度为len的字符串输出到指定的输出流中。
【测试1:FileInputStream输入内容,FileOutputStream将内容输出到磁盘】
package com.Higgin.part3; import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException; public class FileOutputStreamDemo {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("c://testJavaIO/aaa.java"); //创建字符输入流
FileOutputStream fos = new FileOutputStream("c://testJavaIO/aaaNew.java");
byte[] bbuf=new byte[];
int hasInput=;
while((hasInput=fis.read(bbuf))>){ //从aaa.java文件中不断取出数据
fos.write(bbuf,,hasInput); //每读取一次数据,将数据写入输出流
}
/*
* 直接InputStream.write(String)会出错,下面的fos.write(testStr);
* 使用InputStream.write(String.getBytes())处理就可以了!如下就是修改后的fos.write(testStr.getBytes());
*/
String testStr="哈哈哈哈哈哈";
fos.write(testStr.getBytes()); //处理过str后就可以将流输出了
fis.close();
fos.close();
}
}
【运行前文件位置】
【运行后的结果】
【测试2:FileWriter将String内容输出到磁盘】
package com.Higgin.part3; import java.io.FileWriter;
import java.io.IOException; public class FileWriteDemo {
public static void main(String[] args) throws IOException {
FileWriter fw=new FileWriter("c://testJavaIO/ddd.txt"); fw.write("HigginCui 2016阅读的金庸小说\n"); //可以直接将String类型的数据写入Writer类型的输出流中,Writer类特有,OutputStream得先将字符串进行转化为byte[]数组
fw.write("天龙八部\n");
fw.write("射雕英雄传\n");
fw.write("神雕侠侣\n");
fw.write("笑傲江湖\n"); fw.close();
}
}
【运行后的结果】
【注意】
使用java的IO流执行输出的时候,不要忘记关闭输出流,关闭输出流有以下原因:
1.保证物理流的资源被收回
2.将输出流缓冲区中的数据flush到物理节点中(因为在执行close()方法之前,自动执行flush()方法 )
IO流05_OutputStream和Writer输出流的更多相关文章
- java中的IO流(输入流与输出流)概述与总结
Java中IO流,输入输出流概述与总结 总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都 ...
- Java的IO流以及输入流与输出流的异同
一:流的基本概念: Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.J ...
- IO流中的字符输入输出流及try...catch处理流处理中的异常
使用字节流读取中文的问题 import java.io.FileInputStream; import java.io.IOException; /* 使用字节流读取中文文件 1个中文 GBK:占用两 ...
- IO流的字节输入输出流(InputStream,OutputStream)
字节输出流与文件字节输出流 文件存储原理和记事本打开文件原理 OutputStream及FileOutputStream import java.io.FileOutputStream; import ...
- 十八、Java基础--------IO流体系以及字符流
在上一章节中详细介绍集合框架的相关知识,在接下来的几篇文章中将讲述Java中另一个及其重要的知识——IO流,本文主要是讲述IO流的一些基本概念以及字符流的相关应用. IO流 介绍IO流之前先介绍一下什 ...
- 【Java基础】Java IO流的总结
Java IO流分为输入流和输出流,而输入流和输出流中又分字符流和字节流.顾名思义,输入流则是输入到程序中计算,输出流是把程序的结果输出到文件或者设备.而字符流输入输出以字符为单位,字节流则是以字节为 ...
- 一些IO流的知识
IO流: 输入流:输出流: 字节流:字符流:为了处理文字数据方便而出现的对象. 其实这些对象的内部使用的还是字节流(因为文字最终也是字节数据) 只不过,通过字节流读取了相对应的字节数,没有对这些字节直 ...
- IO流常规操作
IO流 IO就是输入输出,IO设备在计算机中起着举足轻重的作用,IO流也就是输入输出流,用来交互数据,程序和程序交互,程序也可以和网络等媒介交互. 一.IO流的分类 要分类,肯定得站得不同角度来看这个 ...
- 慕课网_文件传输基础——Java IO流
第1章 文件的编码 1-1 文件的编码 (15:07) 第2章 File 类的使用 2-1 File 类常用 API 介绍 (10:50) import java.io.File; import ja ...
随机推荐
- MVC产生验证码
来源地址: http://www.cnblogs.com/insus/p/3629269.html
- 如何让Iconfont作用到content伪类中
沿用同行思密达的方法整理了一下;前提是先引入iconfont字体图标(引用线上iconfont查看上篇随笔):比如 其中&#是开头用以标明这是字符实体,x表示这是十六进制,而CSS的cont ...
- 似曾相识的 RecyclerView
一.常用方法 RecyclerView 与 ListView.GridView 类似,都是可以显示同一种类型 View 的集合的控件. 首先看看最简单的用法,四步走: ①接入 build.gradle ...
- fastjson把对象转化成json避免$ref
转自http://blog.csdn.net/wxwzy738/article/details/30244993 DisableCircularReferenceDetect来禁止循环引用检测: JS ...
- Linux下查看CPU型号,内存大小,硬盘空间命令
1 查看CPU 1.1 查看CPU个数 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 2 **uniq命令:删除重 ...
- 【转】/etc/grub.conf文件详解
转自:http://leejia.blog.51cto.com/4356849/788902 grub.conf是grub的主配置文件,通过这个配置文件,grub才能找到kernel,系统才能正常启动 ...
- 【24】若所有参数皆需类型转换,请为此采用non-members函数
1.令class支持隐式类型转换,往往是个糟糕的主意.但有些情况是合理的,比如数值类型.考虑,有理数Rational有分子,分母两个字段,缺省参数值为0,1.Ration a = 2;我们期望构造一个 ...
- Android多媒体-人脸识别
1. 相关背景 Google 于2006年8月收购Neven Vision 公司 (该公司拥有 10 多项应用于移动设备领域的图像识别的专利),以此获得了图像识别的技术,并不是常快应用到免费的 Pic ...
- Android权限设置android.permission完整列表
android.permission.ACCESS_CHECKIN_PROPERTIES允许读写访问"properties”表在checkin数据库中,改值可以修改上传( Allows re ...
- 常用Linux运维命令
1.查看TCP连接状态 netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn netstat -n | awk '/^tcp/ {++S[$NF]} ...