我写好了一个类,从ini里面读取内容,然后输出到屏幕,已经成功了
现在需要每次运行程序时,把ini内容读取到几个jTextField,
意思就是把ini内容设置为jTextField默认植
请各位尽可能的给我详细讲讲。不胜感激
这是读取ini的类:
package test;import java.io.FileInputStream;
//import java.io.FileNotFoundException;
//import java.io.IOException;
import java.util.Properties;
public class IniFile {
    public static void main(String[] args){        
        Properties p = new Properties();
        FileInputStream fs = null;
        try{
            fs=new FileInputStream("./install.ini");
            p.load(fs);
            String IP1;
            String IP2;
            String IP3;
            String Pt1;
            String Pt2;
            String Pt3;
            IP1=p.getProperty("UserLogin"); 
            IP2=p.getProperty("TQterminal");
            IP3=p.getProperty("VMterminal");
            Pt1=p.getProperty("Userport");
            Pt2=p.getProperty("TQport");
            Pt3=p.getProperty("VMport");
            
            System.out.println(IP2);
System.out.println(IP3);
            System.out.println(Pt1);
            System.out.println(Pt2);
            System.out.println(Pt1);
           
        }catch(Exception e){
            System.out.print(e.toString());
        }finally{
            try{
                fs.close();
                p=null;
            }catch(Exception e){
                System.out.print(e.toString());
            }
        }
    }
}这是ini文件:
UserLogin=192.168.1.11
Userport=9999TQterminal=192.168.1.11
TQport=8900
VMterminal=192.168.1.11
VMport=8901
这是需要显示ini内容的框框:

解决方案 »

  1.   

    既然你已经读取到了.ini文件中的内容了,
    在生成GUI画面时设置text就可以了。只是少做一步而已。
      

  2.   

    问题是怎么设置 text???
      

  3.   

    1.你已经有了ini的Properties对象p。
    2.在你GUI窗体初始化的时候,只要把P中对应的信息,通过JTextField.setText(p中的信息);就行了
      

  4.   

    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.io.FileInputStream;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Properties;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JTextField;public class YourFrame extends JFrame {
    private JTextField text; public YourFrame() {
    setText();
    getContentPane().setLayout(new FlowLayout());
    setSize(400, 300);
    setVisible(true);
    } public static void main(String[] args) {
    new YourFrame();
    } /**
     * 将你读出来的内容显示在JTextField里面
     */
    public void setText() {
    List<String> list = readIni();
    System.out.println(list.size());
    if (list != null) {
    for (int i = 0; i < list.size(); i++) {
    text = new JTextField();
    text.setPreferredSize(new Dimension(100, 30));
    getContentPane().add(text);
    text.setText(list.get(i));
    }
    }
    } /**
     * 这个是你写的 读取.ini文件的方法
     * @return
     */
    public List<String> readIni() {
    Properties p = new Properties();
    FileInputStream fs = null;
    List<String> list = null;
    try {
    fs = new FileInputStream("config/install.ini");
    p.load(fs);
    final String IP1 = p.getProperty("UserLogin");
    final String IP2 = p.getProperty("TQterminal");
    final String IP3 = p.getProperty("VMterminal");
    final String Pt1 = p.getProperty("Userport");
    final String Pt2 = p.getProperty("TQport");
    final String Pt3 = p.getProperty("VMport"); list = new ArrayList<String>();
    list.add(IP1);
    list.add(IP2);
    list.add(IP3);
    list.add(Pt1);
    list.add(Pt2);
    list.add(Pt3);
    } catch (Exception e) {
    System.out.print(e.toString());
    return null;
    } finally {
    try {
    fs.close();
    p = null;
    } catch (Exception e) {
    System.out.print(e.toString());
    return null;
    }
    } return list;
    }}
      

  5.   

    是这样吗?
    错误P无法引用,我已经import text.IniFile;啦
      

  6.   

    是这样吗?
            jTextField1 = new javax.swing.JTextField().setText(P.getProperty("UserLogin"));
    错误P无法引用,我已经import text.IniFile;啦
      

  7.   

    import java.awt.BorderLayout;
    import java.awt.ComponentOrientation;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.GridLayout;
    import java.io.FileInputStream;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Properties;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;public class YourFrame extends JFrame {
    private JLabel  label;

    private JTextField text; private JPanel panel;

    private String[] s ={"用户登录IP:","端口号:","TQ终端IP:","端口号:","VM终端IP:","端口号:"}; public YourFrame() {
    getContentPane().setLayout(new BorderLayout());
    panel = new JPanel();
    panel.setLayout(new GridLayout(3, 4));
    getContentPane().add(panel);
    final JPanel panel_1 = new JPanel();
    panel_1.setPreferredSize(new Dimension(0, 50));
    getContentPane().add(panel_1, BorderLayout.NORTH);
    setText();
    setSize(400, 300);
    setVisible(true); final JPanel panel_2 = new JPanel();
    panel_2.setPreferredSize(new Dimension(0, 50));
    getContentPane().add(panel_2, BorderLayout.SOUTH); final JButton button = new JButton();
    button.setText("取消");
    panel_2.add(button); final JButton button_1 = new JButton();
    button_1.setText("应用");
    panel_2.add(button_1);
    } public static void main(String[] args) {
    new YourFrame();
    } /**
     * 将你读出来的内容显示在JTextField里面
     */
    public void setText() {
    List<String> list = readIni();
    System.out.println(list.size());
    if (list != null) {
    for (int i = 0; i < list.size(); i++) {
    label = new JLabel(s[i]);
    text = new JTextField();
    text.setPreferredSize(new Dimension(100, 20));
    panel.add(label);
    panel.add(text);
    text.setText(list.get(i));
    }
    }
    } /**
     * 这个是你写的 读取.ini文件的方法
     * 
     * @return
     */
    public List<String> readIni() {
    Properties p = new Properties();
    FileInputStream fs = null;
    List<String> list = null;
    try {
    fs = new FileInputStream("config/install.ini");
    p.load(fs);
    final String IP1 = p.getProperty("UserLogin");
    final String Pt1 = p.getProperty("Userport");
    final String IP2 = p.getProperty("TQterminal");
    final String Pt2 = p.getProperty("TQport");
    final String IP3 = p.getProperty("VMterminal");
    final String Pt3 = p.getProperty("VMport"); list = new ArrayList<String>();
    list.add(IP1);
    list.add(Pt1);
    list.add(IP2);
    list.add(Pt2);
    list.add(IP3);
    list.add(Pt3);
    } catch (Exception e) {
    System.out.print(e.toString());
    return null;
    } finally {
    try {
    fs.close();
    p = null;
    } catch (Exception e) {
    System.out.print(e.toString());
    return null;
    }
    } return list;
    }}