CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

如何利用文件流保存&读取一个用户信息数组,迫切等待ing

楼主ghostcow(バカのOX)2003-08-04 10:54:04 在 Java / J2SE / 基础类 提问

我定义了1个用户信息类  
  class   Info   {  
   
  private   String   m_name;  
  private   int   m_age;  
  private   long   m_salary;  
  private   boolean   m_ishandled;  
   
  Info()   {  
   
  m_name   =   "";  
  m_age   =   -1;  
  m_salary   =   0;  
  m_ishandled   =   false;  
   
  }  
   
  public   void   setUser(String   name,int   age,long   salary,boolean   ishandled)   {  
   
  m_name   =   name;  
  m_age   =   age;  
  m_salary   =   salary;  
  m_ishandled   =   ishandled;  
   
  }  
   
  }  
  然后在main()里定义一个用户信息数组长度为10  
  Info[]   info   =   new   Info[10];  
  利用方法setUser()给数组中各个变量赋值,请问如何利用文件流把这个用户信息数组保存到文件,然后又能从文件中读出。  
  迫切问题,在线等待,解决就给分.................... 问题点数:100、回复次数:8Top

1 楼ChDw(米)回复于 2003-08-04 11:08:43 得分 10

class   Info   implements   java.io.Serialable{  
   
  这样你就可以直接用ObjectOutputStream来write这些Object了Top

2 楼clmate(紫霞郎)回复于 2003-08-04 11:09:25 得分 0

这不是很easy嘛。  
  先new   一个FileWriter,然后取数组中的用户信息,用write()方法写入就行了。也可以用别的InputStream,看一下API就明白了。Top

3 楼formalin(福尔马林)回复于 2003-08-04 11:17:11 得分 0

楼主的意思是要自己做数据库吗?Top

4 楼sgdb(神天月晓)回复于 2003-08-04 11:24:30 得分 0

这种东西,楼主要是不想写在数据库里,那就写在xml里好了!Top

5 楼ghostcow(バカのOX)回复于 2003-08-04 11:26:59 得分 0

To   ChDw(米):  
             
              implements   java.io.Serialable   之后有报错"java.io.Serialable   can   not   be   resloved   or   is   not   a   valid   superinterface",偶是菜鸟,如何解决  
   
   
  Top

6 楼ghostcow(バカのOX)回复于 2003-08-04 11:30:12 得分 0

To   clmate(紫霞郎):  
            写是写进去了,可怎么读出来啊?怎么判别文本里的分别保存的信息属于哪个用户?  
  Top

7 楼ghostcow(バカのOX)回复于 2003-08-04 11:33:26 得分 0

To   formalin(福尔马林)   和   sgdb(神天月晓)   :  
        不是要做数据库,也不用xml,只是想了解下java的数据结构和文件Top

8 楼Kidwish(连接失败)回复于 2003-08-04 13:02:20 得分 90

import   java.io.*;  
   
  public   class   UserInfoSerialization   {  
      public   static   void   main(String   args[])   {  
   
          //   Object   serialization  
          try   {  
              Info   obj1   =   new   Info();  
              //System.out.println("[USER_INFO   ->   FILE]:   "   +   obj1.getUserInfo());  
              FileOutputStream   fos   =   new   FileOutputStream("UserInfo");  
              ObjectOutputStream   oos   =   new   ObjectOutputStream(fos);  
              oos.writeObject(obj1);  
              oos.flush();  
              oos.close();  
          }   catch(Exception   e)   {  
                  System.out.println("Exception   during   serialization:   "   +   e);  
                  System.exit(0);  
          }  
   
          //   Object   deserialization  
          try   {  
              Info   obj2;  
              FileInputStream   fis   =   new   FileInputStream("UserInfo");  
              ObjectInputStream   ois   =   new   ObjectInputStream(fis);  
              obj2   =   (Info)ois.readObject();  
              ois.close();  
              //System.out.println("[FILE   ->   USER_INFO]:   "   +   obj2.getUserInfo());  
          }catch(Exception   e)   {  
                System.out.println("Exception   during   deserialization:   "   +   e);  
                System.exit(0);  
          }  
      }  
  }  
   
  class   Info   implements   Serializable{  
   
  private   String   m_name;  
  private   int   m_age;  
  private   long   m_salary;  
  private   boolean   m_ishandled;  
   
  Info()   {  
   
  m_name   =   "undefined";  
  m_age   =   -1;  
  m_salary   =   0;  
  m_ishandled   =   false;  
   
  }  
   
  public   void   setUserInfo(String   name,int   age,long   salary,boolean   ishandled)   {  
   
  m_name   =   name;  
  m_age   =   age;  
  m_salary   =   salary;  
  m_ishandled   =   ishandled;  
   
  }  
   
  public   String   getUserInfo()   {  
      return   "USER_NAME   =   "+m_name+";   AGE   =   "+m_age+";   SALARY   =   "+m_salary+";   IS_HANDLED   =   "+m_ishandled;  
  }  
   
  }  
   
   
   
  Top

相关问题

  • 从数据库读取数据保存到数组问题
  • 读取文件的内容怎样保存在一个数组里
  • 如何从控制台读取整形数据保存到整形数组a中,以回车换行结束
  • 急问?请教如何读取一个数据文件,保存到数值数组中。
  • [还是不懂~~~]如何读取某一个word文档内容,并依次保存到一个数组中去(以回车为分隔)?
  • 文件保存字符串数组
  • cookie可以保存为数组么?
  • 请教 session 保存数组的问题
  • 大家有没有用过String数组来读取文件流?
  • 关于PHP读取数组效率的问题

关键词

  • 文件
  • 用户
  • 信息
  • 数组
  • ishandled
  • 保存
  • ois
  • salary
  • 利用
  • objectoutputstream

得分解答快速导航

  • 帖主:ghostcow
  • ChDw
  • Kidwish

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo