当前位置: 代码迷 >> J2SE >> JAVA怎么修改ini配置文件中的指定字段的值
  详细解决方案

JAVA怎么修改ini配置文件中的指定字段的值

热度:236   发布时间:2016-04-24 02:18:37.0
JAVA如何修改ini配置文件中的指定字段的值?
有个配置文件test.ini 内容:
AAA = 111
BBB = 222
CCC = 333
想把指定的BBB后面的值修改为444 用JAVA如何做?
现在只想到逐行读取找到BBB 但不知道如何修改值。

我想到了bufferedWriter和FileWriter,以及Properties,但不知道如何实现,请指教!

------解决方案--------------------
Java code
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.Map.Entry;import java.util.Properties;import java.util.Set;public class ProTest {    public static void main(String[] args) throws FileNotFoundException, IOException {        Properties pro = new Properties();        InputStream is = new FileInputStream("f:/temp/test.ini");        pro.load(is);        showPro(pro);        pro.setProperty("BBB", "264");        OutputStream os = new FileOutputStream("f:/temp/test.ini");        pro.store(os,null);        pro.clear();        is.close();        is =  new FileInputStream("f:/temp/test.ini");        pro.load(is);        showPro(pro);               os.close();    }        public static void showPro(Properties pro)    {        Set<Entry<Object, Object>> entrys = pro.entrySet();        for (Entry<Object, Object> entry : entrys) {            System.out.println(entry.getKey()+"="+entry.getValue());        }    }}
------解决方案--------------------
Java code
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.Map.Entry;import java.util.Properties;import java.util.Set;public class ProTest {    public static void main(String[] args) throws FileNotFoundException, IOException {        Properties pro = new Properties();        InputStream is = new FileInputStream("f:/temp/test.ini");        pro.load(is);        showPro(pro);        pro.setProperty("BBB", "264");        OutputStream os = new FileOutputStream("f:/temp/test.ini");        pro.store(os,null);        pro.clear();        is.close();        is =  new FileInputStream("f:/temp/test.ini");        pro.load(is);        showPro(pro);        is.close();        os.close();    }        public static void showPro(Properties pro)    {        Set<Entry<Object, Object>> entrys = pro.entrySet();        for (Entry<Object, Object> entry : entrys) {            System.out.println(entry.getKey()+"="+entry.getValue());        }    }}
------解决方案--------------------
它认第一个=号,COM2为key,WSDDR=//10.121.4.2:10000为value,没什么问题

------解决方案--------------------
1.import java.io.BufferedWriter;
2.import java.io.File;
3.import java.io.FileInputStream;
4.import java.io.FileWriter;
5.import java.util.Properties;
6.
7.public class IniRead {
8.private static Properties ini = null;
9. //设置INI文件
10. static File file=new File("src/Config.ini");
11. static {
12. try {
13. ini = new Properties ();
14. //加载文件
15. ini.load (new FileInputStream (file));
16. }catch (Exception ex) {
17. ex.printStackTrace();
18. }
19. }
20. private IniRead() {
21. }
22. /** 
23. * 读取INI信息 
24. * */
25. public static String getIniKey (String key) {
26. if(!ini.containsKey (key)) {
27. return "";
28. }
29. return ini.get(key).toString ();
  相关解决方案