JAVA的输入输出基本操作样例

这些类的继承关系有些类似,弄一个作为样例,理解一下其中的机制。

package cc.openhome;

import java.io.*;

public class Member {
    private String number;
    private String name;
    private int age;

    public Member(String number, String name, int age) {
        this.number = number;
        this.name = name;
        this.age = age;
    }

    @Override
    public String toString() {
        return String.format("(%s, %s, %d)", number, name, age);
    }

    public void save() {
        try{
            DataOutputStream output = new DataOutputStream(new FileOutputStream(number));
            output.writeUTF(number);
            output.writeUTF(name);
            output.writeInt(age);
        } catch(IOException ex) {
            throw new RuntimeException(ex);
        }
    }

    public static Member load(String number) {
        Member member = null;
        try {

            DataInputStream input = new DataInputStream(new FileInputStream(number));
            member = new Member(input.readUTF(), input.readUTF(), input.readInt());
        } catch(IOException ex) {
            throw new RuntimeException(ex);
        }
        return member;
    }
}

package cc.openhome;

import java.io.*;

public class MemberDemo {
    public static void main(String[] args) {
        Member[] members = { new Member("B1234", "Justing", 90),new Member("B4532", "Monica", 87)};
        for(Member member : members) {
            member.save();
        }
        System.out.println(Member.load("B1234"));
    }
}

时间: 2024-08-30 12:46:07

JAVA的输入输出基本操作样例的相关文章

JAVA SERVLET 属性范围样例

package com.jeelearning.servlet; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Htt

MariaDB:安装、配置、JAVA源代码样例

      MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.在存储引擎方面,使用XtraDB来代替MySQL的InnoDB.         MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中.MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字 1.设置yum源 参考:

MaxCompute模板与样例

1. 简介 MaxCompute : 是一种快速.完全托管的数据仓库解决方案,用户可以通过SQL, MR, UDF等接口与其交互. MaxCompute Studio : 是MaxCompute平台提供的安装在开发者客户端的大数据集成开发环境(IDE),是用户与MaxCompute交互的高效工具. 代码模板:让用户更加高效的写一些固定模式的代码,简化很多重复的代码,以提高编码效率. 代码示例:一例胜千言,帮助用户快速熟悉语法,可参考示例编写自己的程序,快速上手. 代码模板和示例是用户熟悉新产品和

多线程分别定时读写同一个文件的样例

两个线程,一个每分钟写入当前时间到指定文件,另一个线程读出每分钟新写的内容. 使用简单的Thread.sleep技术实现定时 package test.thread; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.util.Date; /** * 多线程读写同一个文件的样例. * * @author 赵学庆

PHP开发中常用的十个代码样例_php实例

一.黑名单过滤 function is_spam($text, $file, $split = ':', $regex = false){ $handle = fopen($file, 'rb'); $contents = fread($handle, filesize($file)); fclose($handle); $lines = explode("n", $contents); $arr = array(); foreach($lines as $line){ list($w

tomcat-websocket的tyrus样例项目如何部署?

问题描述 websocket的tyrus样例项目如何部署? 最近,我想自己开发一个CHAT的功能,我知道原来WEBSOCKET引入JAVA EE7了,于是,我在TYRUS项目里,下载了SAMPLE, 网址是https://tyrus.java.net/documentation/1.12/index/modules-and-dependencies.html,可是,我以前一直用TOMCAT作为SERVER的,现在似乎必须用JETTYFISH,我只好到知道来请教大家,如何部署这个SAMPLE中的C

java8 Lambda Expressions(lamba表达式) 官方样例代码

     今天仔细的看了java8 Lambda Expressions(lamba表达式) 官方样例代码,详见:http://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html. 有兴趣的朋友可以看一下.      针对官方样例代码进行了部分整理,详细参见下面的源代码,供有兴趣的朋友学习.      此类从普通实现方式,接口实现方式,匿名类实现方式,lambda表达式实现方式逐步讲解为什么要引入lambda表达式

用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试_python

MapReduce与HDFS简介 什么是Hadoop? Google为自己的业务需要提出了编程模型MapReduce和分布式文件系统Google File System,并发布了相关论文(可在Google Research的网站上获得: GFS . MapReduce). Doug Cutting和Mike Cafarella在开发搜索引擎Nutch时对这两篇论文做了自己的实现,即同名的MapReduce和HDFS,合起来就是Hadoop. MapReduce的Data flow如下图,原始数据

JDBC连接MySQL数据库及演示样例

JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,能够为多种关系数据库提供统一訪问,它由一组用Java语言编写的类和接口组成.JDBC为数据库开发者提供了一个标准的API,据此能够构建更高级的工具和接口,使数据库开发者能够用纯 Java API 编写数据库应用程序,而且可跨平台执行,而且不受数据库供应商的限制. 1.跨平台执行: