数据操作流:输入、输出原生java数据类型

使用数据操作流输入、输出原生数据类型的实例:

public class DataOutputStream extends FilterOutputStream implements DataOutput;
public DataOutputStream(OutputStream out);// 只接收字节输出流
public class DataInputStream extends FilterInputStream implements DataInput;
public DataInputStream(InputStream in);                // 只接收字节输入流
———-数据输出流:DataOutputStream,写出指定格式的数据到磁盘文件:
package com.mldn;
import .io.File;
import .io.OutputStream;
import .io.FileOutputStream;
import .io.DataOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class DataOutputDemo
{
        public static void main(String[] args)
        {               
                String path = File.separator + “home” + File.separator + “administrator” + File.separator + “file.txt”;
                File file = new File(path);                // 实例化文件
                OutputStream fos = null;        // 声明输出流
                DataOutputStream output = null;        // 声明数据输出流
                try
                {
                        fos = new FileOutputStream(file);// 实例化文件输出流
                }
                catch (FileNotFoundException e)
                {
                        e.printStackTrace();
                }
                output = new DataOutputStream(fos);// 实例化数据输出流
                String[] names = {“衬衣”, “手套”, “围巾”};        // 商品名
                float[] prices = {89.0f, 39.9f, 59.9f};        // 价格
                int[] num = {10, 20, 30};                                // 数量
                try
                {
                        for (int x = 0; x                         {
                                output.writeChars(names[x]);        // 品名
                                output.writeChar(‘\t');                        // 分隔符
                                output.writeFloat(prices[x]);        // 价格
                                output.writeChar(‘\t');                        // 分隔符
                                output.writeInt(num[x]);                // 数量
                                output.writeChar(‘\n');                        // 换行
                        }
                        System.out.printn(“数据写出完成!”);
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
                try
                {
                        output.close();        // 关闭数据输出流
                        fos.close();        // 关闭字节输出流
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
        }
}
———-数据输入流:DataInputStream
package com.mldn;
import java.io.File;
import java.io.InputStream;
import java.io.FileInputStream;
import java.io.DataInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class DataInputDemo
{
        public static void main(String[] args)
        {               
                String path = File.separator + “home” + File.separator + “administrator” + File.separator + “file.txt”;
                File file = new File(path);                // 实例化文件
                InputStream ips = null;        // 声明输入流
                DataInputStream input = null;        // 声明数据输入流
                try
                {
                        ips = new FileInputStream(file);// 实例化文件输入流
                }
                catch (FileNotFoundException e)
                {
                        e.printStackTrace();
                }
                input = new DataInputStream(ips);// 实例化数据输入流
                char[] names = null;        // 商品名
                String name = null;                // 商品名
                float price = 0.0f;                // 价格
                int num = 0;                        // 数量
                char temp = 0;
                int len = 0;
                try
                {
                        while (true)                                                // 按格式读入数据
                        {
                                names = new char[32];
                                while ((temp = input.readChar()) != ‘\t')
                                {
                                        names[len] = temp;
                                        len++;
                                }
                                name = new String(names, 0, len);        // 品名
                                price = input.readFloat();                        // 价格
                                input.readChar();                                        // \t分隔符
                                num = input.readInt();                                        // 数量
                                input.readChar();                                        // \n分隔符
                                System.out.printf(“商品: %s 价格: %5.2f 数量: %d\n”, name, price, num);
                        }                       
                }
                catch (IOException e)
                {
                        System.out.println(“数据读取完毕!”);
                }               
                try
                {
                        input.close();        // 关闭数据输入流
                        ips.close();        // 关闭字节输入流
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
        }
}
/*
administrator@xu-desktop:~$ java com.mldn.DataInputDemo
商品: 衬衣 价格: 89.00 数量: 10
商品: 手套 价格: 39.90 数量: 20
商品: 围巾 价格: 59.90 数量: 30
数据读取完毕!
*/

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《数据操作流:输入、输出原生java数据类型
本文地址:https://www.zhiletu.com/archives-100.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微