A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 任我行 于 2014-12-23 15:50 编辑
复制代码
  1. import java.io.BufferedReader;
  2. import java.io.FileReader;
  3. import java.io.IOException;
  4. import java.util.Properties;
复制代码


5 个回复

倒序浏览
本帖最后由 任我行 于 2014-12-23 15:54 编辑

import java.io.BufferedReader; import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;
/*
* 从指定文件中将配置文件打印出来  
*/
public class Test {        
         public static void main(String[] args)throws IOException         {                 
             BufferedReader bufr = new BufferedReader(new FileReader("C:\\info.txt"));                 
              String line = null;               
                Properties prop = new Properties();                                
                while (null !=(line = bufr.readLine()))                 {                        
             //对下面两句代码不理解,求指点?????????                       
                String[] arr = line.split("=");                     
               prop.setProperty(arr[0], arr[1]);                     
          //求指点?????????                 }              
                      bufr.close();               
                     System.out.println(prop);               
         }
}
回复 使用道具 举报
Properties 是实现了Map接口 所以 它和Map一样的 有Key和value,不过它也有特殊之处就是的键和值只能存储字符串类型的 并且之间是用=相连接的
常用与文件配置信息
回复 使用道具 举报
Properties中存储的数据都是以键值对的形式,也就是:key=value的形式。这里是将读取到的一行字符串按照“=”进行拆分,得到key和value,然后再添加到Properties集合中。
回复 使用道具 举报
3楼正解
回复 使用道具 举报
比如说源文件里面是
张三=28
李四=25
当读到第一行结束时
String[] arr = line.split();//表示“张三=28”被等号切割,也就是说arr[0]=张三,arr[1]=28
prop.setProperty(arr[0], arr[1]); //Properties为hashTable,Map中的一种,集合里面元素以键值对的形式存在
所以里面设置了张三 = 28
依次往下读一行直到读到null为止。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马