java 数据流DataOutputStream和DataInputstream
java流操作类的认识和总结
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2pjMjExMzIy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />
应用实例
import java.io.*;
public class DataStreamDemo
{
public static void main(String[] args)
{
try
{
DataOutputStream out=new DataOutputStream(new FileOutputStream("F:\\workspace\\JavaPrj\\test.txt"));
double[] prices={18.99,9.22,14.22,5.22,4.21};
int[] units={10,10,20,39,40};
String[] descs={"bike","book","boat","boot","bus"};
for(int i=0;i<prices.length;i++)
{
try
{
out.writeDouble(prices[i]);
out.writeChar(‘\t‘);
out.writeInt(units[i]);
out.writeChar(‘\t‘);
out.writeChars(descs[i]);
out.writeChar(‘\n‘);
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
try
{
out.close();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
DataInputStream in=new DataInputStream(new FileInputStream("F:\\workspace\\JavaPrj\\test.txt"));
double prices;
int num;
StringBuffer name;
char chr;
int len;
try
{
while(true)
{
len=5;
name=new StringBuffer();
prices=in.readDouble();
in.readChar();
num=in.readInt();
in.readChar();
while((chr=in.readChar())!=‘\n‘)
{
name.append(chr);
}
//double类型转String类型以及加入空格对齐的方法
System.out.println("产品名称:"+name+"\t价格:"+prices+getBlanks(len-Double.toString(prices).length())+"\t数量:"+num);
}
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//加入空格进行对齐操作
public static String getBlanks(int n)
{
String str="";
while(n>0)
{
str+=" ";
n--;
}
return str;
}
}
原文地址:https://www.cnblogs.com/mqxnongmin/p/10801696.html
时间: 2025-01-13 22:17:15
java 数据流DataOutputStream和DataInputstream的相关文章
看这两个类的名字就不难猜测出它们的类关系图. DataOutputStream: 主要是一些writeXxx()操作,写出, 相当于序列化 DataInputStream: 主要是一些readXxx()操作,写入, 相当于反序列化 一般情况下,两者会成对出现. 在使用过程中要特别注意, 一个writeXxx() 对应着一个readXxx(), 千万不要用readInt()去对应writeBoolean(). 说白了,就是序列化与反序列化要匹配. 下面举个例子,将Student对象的属性序列化后保
掌握DataOutputStream和DataInputStream的作用. 可以使用DataOutputStream和DataInputStream写入和读取数据. 在IO包中提供了两个与平台无关的数据操作流 数据输出流:DataOutputStream 数据输入流:DataInputStream 通常按照一定格式将输入输出,再按照一定格式将数据输入. 要想使用数据输出流和输入流,则肯定要用户指定数据的保存格式.必须按指定的格式保存数据,才可以将数据输入流将数据读取进来. DataOutput
是Java中输入输出流的装饰类 DataOutputStream 数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中.然后,应用程序可以使用数据输入流将数据读入. 主要方法: void write(byte[] b,int off,int len);//将byte数组off角标开始的len个字节写到OutputStream 输出流对象中. void write(int b);//将指定字节的最低8位写入基础输出流. void writeBoolean(boolean b);/
[例子1] import java.io.DataOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; public class DataOutputStreamDemo{ public static void main(String[] args) throws IOException{ File file = new File("d:" + Fi
DataInputStream 是数据输入流.它继承于FilterInputStream.DataInputStream 是用来装饰其它输入流,它"允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型".应用程序可以使用DataOutputStream(数据输出流)写入由DataInputStream(数据输入流)读取的数据. DataOutputStream?是数据输出流.它继承于FilterOutputStream.DataOutputStream?是用来装饰其它
简介 DataOutputStream是一个包装流,他可以将各种数据类型的数据再内部转称bytes字节,然后利用FileOutputStream写入文件中,DataInputStream读取文件内容的原理与之类似. 以下是一个使用DataOutputStream将对象写入文件,并且从文件中读取内容的操作 代码部分 package cn.test.logan.day10; public class User { String id; String name; float sal; String a
@Test public void fileTest() { //创建File 对象 File file=new File("hell.txt"); //获取文件名 System.out.println(file.getName()); //访问文件的绝对路径 System.out.println(file.getAbsolutePath()); //为文件对象重命名
http://www.verejava.com/?id=16994690613914 package com.io2; import java.io.*; public class TestDataInputStream { public static void main(String[] args) { OutputStream os; try { //向文件中 以 int ,double,boolean ,String 存入数据 os = new FileOutputStream(new F
DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream("a.txt"))); dos.writeInt(5); dos.writeBoolean(true); dos.flush(); dos.close(); DataInputStream dis = new Da