Properties的store()方法和load()方法 示例

原创 2006年06月15日 15:31:00

/*

Properties的一个最有用的方面是可以利用store()方法和load()方法方便地对包含在属性(Properties)对象中的信息进行存储或从盘中装入信息。任何时候都可以将一个属性对象写入流或从中将其读出,这使得属性列表特别方便的实现简单的数据库。

下面的程序使用属性列表创建了一个简单的存储姓名和号码的电话本。为了寻找某人的电话号码,可输入名字进行查询。程序使用store()和load()方法来存储和检索列表。当程序执行时,首先从一个叫phonebook.dat的文件中装入列表,如果这个文件存在,列表就被装入,然后就可以增加列表,如果这个文件不存在则创建之。

*/

/*
A simple telephone number database that uses a property list.
*/
import java.io.*;
import java.util.*;
class PhoneBook{
 public static void main(String[] args) throws IOException{
  Properties ht = new Properties();
  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  String strName,strNumber;
  FileInputStream fin = null;
  boolean changed = false;

  //Try to open phonebook.dat file.
  try{
   fin = new FileInputStream("phonebook.dat");
  }catch(FileNotFoundException e){
   //ignore missing file
  }

  /* If phonebook file already exists,load exsiting
   telephone numbers.
  */
  try{
   if(fin!=null){
    ht.load(fin);
    fin.close();
   }
  }catch(IOException e){
   System.out.println("Error reading file!");
  }

  //Let user enter new names and numbers.
  do{
   System.out.println("Enter new name" +
          " ('quit' to stop): ");
   strName = br.readLine();
   if(strName.equals("quit")) continue;

   System.out.println("Enter number:");
   strNumber = br.readLine();

   ht.put(strName,strNumber);
   changed = true;
  }while(!strName.equals("quit"));

  //If phonebook data has changed,save it.
  if(changed){
   FileOutputStream fOut = new FileOutputStream("phonebook.dat");
   ht.store(fOut,"Telephone Book");
   fOut.close();
  }

  //Look up numbers given a name.
  do{
   System.out.println("Enter name to find ('quit' to stop): ");
   strName = br.readLine();
   if(strName.equals("quit")) continue;
   strNumber = (String)ht.get(strName);
   System.out.println(strNumber);
  }while(!strName.equals("quit"));
 }
}

Properties 类使用Store方法时 避免 覆盖以前Properties 文件的内容

F:\\Demo.properties 文件内容: #\u65B0\u589E\u4FE1\u606F #Wed Sep 14 11:16:24 CST 2016 province=广东...
  • lili518
  • lili518
  • 2017年03月29日 19:04
  • 432

Java 程序 关于Properties 类使用Store方法时不能会覆盖以前Properties 文件的内容

F:\\Demo.properties 文件内容: #\u65B0\u589E\u4FE1\u606F #Wed Sep 14 11:16:24 CST 2016 province=广东 ...

黑马程序员——Properties读取load(),操作,存储store()配置文件简介

----------------------    android培训    java培训   期待与您交流!    ----------------------                ...

【Properties】Properties的load方法

Properties的load方法其实就是传进去一个输入流,字节流或者字符 流,字节流利用InputStreamReader转化为字符流,然后字符流用 BufferedReader包装,Buf...

java读取properties的方法

在日常使用中经常会读取properties文件,现在把自己在网上搜集的一些java读取properties的方法汇总如下: 1、使用java.util.Properties类的load()方法 ...

java加载properties文件的六种基本方式

今天在学习spring的时候,突然想到用工具类的方式来加载properties文件,这样就可以在不改变代码的情况下,更改配置信息,以下是java加载properties文件的六种基本方式的代码: p...

Properties的load方法的具体使用场景--加载数据库资源

Properties的load方法的具体使用场景--加载数据库资源

【Java】properties文件存放位置与加载方式

【前言】经常使用Properties文件存放配置,当运行代码Properties properties = new Properties; properties.load(filePath);的时候,...

Properties的store()方法和load()方法 示例

Properties的一个最有用的方面是可以利用store()方法和load()方法方便地对包含在属性(Properties)对象中的信息进行存储或从盘中装入信息。任何时候都可以将一个属性对象写入流或...
  • wym1581
  • wym1581
  • 2015年04月29日 18:09
  • 719

IO流_Properties的load()和store()功能

package cn.itcast_08; import java.io.FileReader; import java.io.FileWriter; import java.io.IOExcept...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Properties的store()方法和load()方法 示例
举报原因:
原因补充:

(最多只允许输入30个字)