通过FilterOutputStream向OutputStream里写入数据

与DataInputStream对应的是DataOutputStream,后者对各个基本数据类型以及String对象进行格式化,并将其置入一个数据“流”中,以便任何机器上的DataInputStream都能正常地读取它们。所有方法都以“wirte”开头,例如writeByte(),writeFloat()等等。
若想进行一些真正的格式化输出,比如输出到控制台,请使用PrintStream。利用它可以打印出所有基本数据类型以及String对象,并可采用一种易于查看的格式。这与DataOutputStream正好相反,后者的目标是将那些数据置入一个数据流中,以便DataInputStream能够方便地重新构造它们。System.out静态对象是一个PrintStream。
PrintStream内两个重要的方法是print()和println()。它们已进行了覆盖处理,可打印出所有数据类型。print()和println()之间的差异是后者在操作完毕后会自动添加一个新行。
BufferedOutputStream属于一种“修改器”,用于指示数据流使用缓冲技术,使自己不必每次都向流内物理性地写入数据。通常都应将它应用于文件处理和控制器IO。
表10.4 FilterOutputStream的类型


Class
 


Function
 


Constructor Arguments
 


How to use it
 


Data-OutputStream
 


Used in concert with DataInputStream so you can write primitives (int, char, long, etc.) to a stream in a portable fashion.
 


OutputStream
 


Contains full interface to allow you to write primitive types.
 


PrintStream
 


For producing formatted output. While DataOutputStream handles the storage of data, PrintStream handles display.
 


OutputStream, with optional boolean indicating that the buffer is flushed with every newline.
 


Should be the “final” wrapping for your OutputStream object. You’ll probably use this a lot.
 


Buffered-OutputStream
 


Use this to prevent a physical write every time you send a piece of data. You’re saying “Use a buffer.” You can call flush() to flush the buffer.
 


OutputStream, with optional buffer size.
 


This doesn’t provide an interface per se, just a requirement that a buffer is used. Attach an interface object.
 

类 功能 构建器参数/如何使用

DataOutputStream 与DataInputStream配合使用,以便采用方便的形式将基本数据类型(int,char,long等)写入一个数据流 OutputStream/包含了完整接口,以便我们写入基本数据类型
PrintStream 用于产生格式化输出。DataOutputStream控制的是数据的“存储”,而PrintStream控制的是“显示” OutputStream,可选一个布尔参数,指示缓冲区是否与每个新行一同刷新/对于自己的OutputStream对象,应该用“final”将其封闭在内。可能经常都要用到它
BufferedOutputStream 用它避免每次发出数据的时候都要进行物理性的写入,要求它“请先在缓冲区里找”。可调用flush(),对缓冲区进行刷新 OutputStream,可选缓冲区大小/本身并不能提供一个接口,只是发出使用缓冲区的要求。需要同一个接口对象连接到一起.

时间: 2024-12-31 01:01:22

通过FilterOutputStream向OutputStream里写入数据的相关文章

怎么按照协议顺序往bytearray里写入数据 并且可以读出来 还原数据

问题描述 怎么按照协议顺序往bytearray里写入数据 并且可以读出来 还原数据 怎么按照协议顺序往bytearray里写入数据并且可以读出来还原数据 老师让看的,完全不懂什么意思啊 求大神指点 解决方案 请参看:ByteArray详解 解决方案二: 是什么协议?不同的协议写入顺序也不一样.如果是网络协议的话,还要考虑字节序的问题: 解决方案三: java:参考这几个类的APIByteArrayOutputStreamByteArrayInputStreamDataOutputStreamDa

activity-Activity发送广播, 在Intent里写入数据, 在广播里获取Intent的数据每次一样?

问题描述 Activity发送广播, 在Intent里写入数据, 在广播里获取Intent的数据每次一样? 我做一个定时任务, 时间到启动广播, 广播发送命令. 但广播每次从Intent的数据是一样的, 而我在Activity每次写入的数据不同, 是为什么?? 解决方案 没代码,叫我们怎么看 解决方案二: 同上,楼主你最好把自己实现的代码贴出来 解决方案三: 你把代码贴出来呀,没代码我们怎么看?

POI向带有表头的excel模板里写入数据,写完后就把表头置空了

问题描述 如题,利用POI向带有表头的excel模板里写入数据,hsWorkbook.write(fos);fos.close();执行完后就把表头置空了,请问各位高手怎么处理?谢谢大家. 解决方案 解决方案二:FileInputStreamfile=newFileInputStream("SampleTest.xls");HSSFWorkbookhsWorkbook=newHSSFWorkbook(newPOIFSFileSystem(file));HSSFSheethssheet=

向记事本里写入数据、一个修改密码的判断方法

数据 <%@language="Vbscript"%><% Response.Expires=0 %><% if Session("fz_login") = "8" then %><% if Request.ServerVariables("HTTP_METHOD")="POST" And checkme<>"true" then u

java web-SSH 项目里,数据如何流转的

问题描述 SSH 项目里,数据如何流转的 项目:http://jishiweili.iteye.com/blog/2080611 问题: 找到上面这个项目,下载在本地也能运行了,就是不太明白数据是怎么流转的 1)struts.xml 为何不需要类似下面的配置了?为了实现后台处理相应的URL请求,code和xml文件里面都要如何配置或者加annotation? action name="login" class="struts2.LoginAction" method

新人拼凑的码,求解为什么D\\点云数据.txt中没有写入数据!!

问题描述 新人拼凑的码,求解为什么D\点云数据.txt中没有写入数据!! using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.Kinect; using System.IO; using System.Windows.Forms; namespace GetPointCloudFromK

导出-怎么把System.data.DataTable 里的数据导入到Excel表格里呢?

问题描述 怎么把System.data.DataTable 里的数据导入到Excel表格里呢? 请问怎么把Datatable里的数据导出到Excel里的表格里,我导出的只有一行是什么原因呢? 解决方案 遍历,然后自己通过微软提供的dll去写入到excel文件,或者用NPOI,这个挺好用的 解决方案二: 楼主使用的导出代码是什么?建议详细描述一下. 解决方案三: http://blog.csdn.net/xianfajushi/article/details/8120109

vs mfc 保存数据到txt-vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊

问题描述 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 解决方案 响应事件 比如你定义一个按钮,当点击这个按钮保存文件 你对这个按钮绑定点击事件函数 在函数里面取得编辑框的内容,然后写入到一个文件里面! 解决方案二: 用GetWindowText来获得编辑框中的内容,用FILE结构体来读写文件就可以 解决方案三: 想要自动保存的话,就加一个判断编辑框内容是否改变的消息处理,如果改变了,那么再写入

android 向SD卡写入数据

原文:android 向SD卡写入数据 1.代码: /** * 向sdcard中写入文件 * @param filename 文件名 * @param content 文件内容 */ public void saveToSDCard(String filename,String content) throws Exception{ File file=new File("/mnt/sdcard", filename); OutputStream out=new FileOutputSt