review30
数据流
DateInputStream和DataOutputStream类创建的对象称为数据输入流和数据输出流。这两个流是很有用的流,它们允许程序按着机器无关的风格读取Java原始数据。也就是说,当读取一个数值时,不必关心这个数值应当是多少个字节。
以下是DataInputStream和DataOutputStream的构造方法。
- DataInputStream(InputStream in)创建的数据输入流指向一个由参数in指定底层输入流。
- DataOutputStream(OutputStream out)创建的数据输出流指向一个由参数out指定的底层输出流。
数据流需要使用到底层流。
代码展示如下所示:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException; public class Test02 { public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("E:/test/write01.txt"); try {
FileOutputStream out = new FileOutputStream(file);
DataOutputStream outData = new DataOutputStream(out);
outData.writeInt(100);
outData.writeLong(123456789);
outData.writeFloat(3.1415926f);
outData.writeDouble(987654321.1234563);
outData.writeBoolean(false);
outData.writeChars("Hello! 大家好"); }
catch (IOException e) {} try {
FileInputStream in = new FileInputStream(file);
DataInputStream inData = new DataInputStream(in);
System.out.println(inData.readInt());
System.out.println(inData.readLong());
System.out.println(inData.readFloat());
System.out.println(inData.readDouble());
System.out.println(inData.readBoolean()); char c = '\0';
while((c = inData.readChar()) != '\0')
System.out.print(c); }
catch (IOException e) {} } }
运行结果如下所示:

字符串的读取是读一个一个字符。
该代码的数据流没有关闭,这样是不正确的。
只有字符数组里是可以不用关闭的。
review30的更多相关文章
随机推荐
- api xml database 设计一种数据库
w 问题 0-新增和读取,可以忽略更新和删除: 1-被请求方的xml dom结构多层且不定,且未来可能增删某些键(dom节点),且键值长度最值可能无法确定: 3-请求过程可能出现异常exception ...
- Python3 面向对象(1)
面向.概述 面向过程: 根据业务逻辑从上到下写垒代码面向过程的设计的核心是过程,过程即解决问题的步骤, 面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西 优点: 极大降低了程序的 ...
- Android系统移植与调试之------->如何使用PhotoShop转换24位的bmp图片为16位bmp图片
使用Android移植时候,很多图片都需要16为的bmp格式,所以研究了一下如何从24位转换成16位,供大家参阅 step1:查看bmp图片的属性,如下图所示,是24位的 step2:用PhotoSh ...
- tfboys——tensorflow模块学习(三)
tf.estimator模块 定义在:tensorflow/python/estimator/estimator_lib.py 估算器(Estimator): 用于处理模型的高级工具. 主要模块 ex ...
- 解释*args和**kwargs的含义
当我们不知道向函数传递多少参数时,比如我们向传递一个列表或元组,我们就使用*args def func(*args): for i in args: print(i) func(3,2,1,4,7) ...
- 一种基于自定义代码的asp.net网站访问IP过滤方法!
对于一些企业内部核心系统,特别是外网访问的时候,为了信息安全,可能需要对外部访问的IP地址作限制,虽然IIS中也提供了根据IP地址或IP地址段进行限制或允许,但并没有提供根据IP地址所在的城市进行限制 ...
- 【转】jQuery插件之ajaxFileUpload
转自:http://www.cnblogs.com/kissdodog/archive/2012/12/15/2819025.html 说在前头,本文出自上面的作者,只是以前存的一些网址不见了,怕以后 ...
- rails generator
generate 查找顺序 rails/generators/initializer/initializer_generator.rb generators/initializer/initializ ...
- Windows虚拟机安装Linux系统
windows系统安装linux centos虚拟系统 1.下载 VMware Workstation Pro并安装,效果如图 2.下载linux系统 https://www.centos.org/d ...
- 配置树莓派3和局域网NTP服务器实现内网时间校准
一.配置局域网NTP服务器 1.安装ntp-4.2.8p5-win32-setup.exe 下载地址:https://www.meinbergglobal.com/english/sw/ntp.htm ...