如题,希望能将配置文件中的内容通过点击一个按钮读取到一个空的jlist中。前提是不知道配置文件中有多少键,不知道键名,但是要能把配置文件的键名和值都读出来。特别是键名最重要。
知道的仁兄请给个代码或者提供一些思路及方法,小弟万分感谢

解决方案 »

  1.   

    applicationProps = new Properties();applicationProps.load(fis);//读入流Enumeration enumAll=applicationProps。propertyNames()//枚举所有键剩下就是迭代进List
      

  2.   

    Properties p = new Properties();
    try {
    p.load(this.getClass().getClassLoader().getResourceAsStream("配置文件名(相对你的类路径)"));
    Enumeration<Object> keys = p.keys();
    for(; keys.hasMoreElements();) {
    Object key = keys.nextElement();
    Object value = p.get(key);
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
      

  3.   

    权且把你的pripertise理解为Properties-_-!1、生成Properties对象Properties props = new Properties();
    String name = ...;//path是你Properties文件名称,需包含package名称
    InputStream is = getClass().getResourceAsStream(path);//如果是外部文件,可以使用FileInputStream
    props.load(is);
    is.close();Properties对象其实就是一个HashTable,因此HashTable中的方法都可以使用,包括读取键值:Iterator it = props.keySet().iterator();
    while(it.hasNext){
        String key = (String)it.next();
        System.out.print("键值:"+key);
        System.out.println("   对应的值:"+props.get(key));
    }
    至于怎么放到JList中,就不多说了,将JList的model设置为DefaultListModel,然后往model中add数据就行
      

  4.   


    /**
     * 将path指定的.properties文件读取到jlit中
     * @param jlist 要存放这些配置属性的jlist
     * @param path 配置文件位置(相对你的项目的类路径)
     */
    public void m(JList jlist, String path) {
    Properties p = new Properties();
    try {
    p.load(this.getClass().getClassLoader().getResourceAsStream(path));
    Enumeration<Object> keys = p.keys();
    for(; keys.hasMoreElements();) {
    Object key = keys.nextElement();
    Object value = p.get(key);
    // jlist.add()  这里你怎么添加处理我就不知道咯
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
      

  5.   

    4楼的大哥,要把得到的object key这个东西加入到jlist中要怎么弄啊?jlist.add()方法中的参数没有事object类型的啊?
    麻烦下,再说说啊!
      

  6.   

    原文地址: http://blog.csdn.net/LiuHaitao/archive/2006/11/04/1366001.aspx
    呵呵, 上班咯1.添加项.    import javax.swing.DefaultListModel;
        DefaultListModel listModel   =   new   DefaultListModel();先要在做之前用上面语句创建一个Model用来存放列表框项的数据。 再在Model加入数据listModel.add(int index, Object element); 在index索引位置插入Object element数据,然后用jList1.setModel(listModel);把listModel的数据加入jList1中。add按钮代码
             jTextField5.requestFocus();
            if(jTextField5.getText().length()>0)
            {listModel.add(0,jTextField5.getText());
              jList1.setModel(listModel);
              jTextField5.setText(null);
            }2.修改选中的项中的数据。只要用到listModel.set(int index, Object element) ;主要代码        listModel.set(jList1.getSelectedIndex(),jTextField5.getText());
                index=listModel.getSize();
    3.删除选中项.用listModel.remove(int index);主要代码
                listModel.remove(jList1.getSelectedindex());4.清空所有项。用listModel.clear();主要代码             listModel.clear();本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LiuHaitao/archive/2006/11/04/1366001.aspx