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 ...
随机推荐
- 在高版本SDK中打开现存低版本SDK工程
直接打开低版本SDK工程会出现错误提示:“Unable to resolve target 'android-xx” 解决方法: 1.将project.properties文件中的“target=an ...
- Java NIO 备忘
$.backlog:可以把它简单理解为一个 listening socket 的请求连接队列的限制.当队列中的连接请求达到队列限制时,kernel 会拒绝信的连接请求.只有当应用程序通过 accept ...
- Java编程 -- 命名规范
转自:http://www.hawstein.com/posts/google-java-style.html#Naming 命名约定 5.1 对所有标识符都通用的规则 标识符只能使用ASCII字母和 ...
- java 实现视频转换通用工具类:视频相互转换-Ffmpeg(三)
java 实现视频转换通用工具类:获取视频元数据信息(一) java 实现视频转换通用工具类:视频相互转换-总方法及Mencoder(二) 这节主要是ffmpeg的相关方法封装,在实际调用中主要使用f ...
- Windows Server 2008找回密码
1.通过Windows Server 2008 R2的安装光盘引导计算机启动,映像加载完毕后 ,按 Shift+F10 ,打开命令提示符界面,进入Windows目录所在分区(cd windows\sy ...
- Linux下查看CPU型号,内存大小,硬盘空间命令
1 查看CPU 1.1 查看CPU个数 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 2 **uniq命令:删除重 ...
- IntelliTrace 调试、定位异常
最近看了一个开源数据库管理,然后没有认真看它的配置环境,想看看是什么东西, 然后发现有类型转换的错误,但是一下子也定位不到哪里出错? 所以对于这种一下子找不到异常在哪里的,可以使用intellitra ...
- PAT 1006
1006. Sign In and Sign Out (25) At the beginning of every day, the first person who signs in the com ...
- Overview & Change Log
Overview & Change Log Nova Framework is a PHP 5.5+ MVC Framework. It's designed to be lightweigh ...
- iOS web与js的简单交互
我们在封装网页的时候经常会遇到需要往网页里面的控件添加数据,但是怎么添加又成了难点.本人最近在开发的时候就遇到这样的事,解决之后,来和大家分享一下. //以必应网站为例 [web loadReques ...