lillian1205

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            0 Posts :: 5 Stories :: 0 Comments :: 0 Trackbacks

          用Properties和RandomAccessFile

          1 Properties
              用Properties讀取特別簡單,以下是一些小方法
              寫文件的時候用BufferedWriter可以自由換行,代替換行符 。但是用這種方法寫文件會覆蓋掉文件原有的內容,也就是說不能滿足追加信息的功能
          這就用到RandomAccessFile了


          public class IniRead {
          private static Properties ini = null;
              
          //設置INI文件
              static File file=new File("Config-增加.ini");
              
          static {
                  
          try    {
                      ini 
          = new Properties ();
                      
          //加載文件
                      ini.load (new FileInputStream (file));
                  }
          catch (Exception ex) {
                      ex.printStackTrace();
                  }

              }

              
          private IniRead() {
              }

              
          /**
               * 讀取INI信息
               * 
          */

              
          public static String getIniKey (String key) {
                  
          if(!ini.containsKey (key)) {
                      
          return "";
                  }

                  
          return ini.get(key).toString ();
              }

              
          /**
               * 修改INI信息
               * 
          */

              
          public static void setIniKey (String key, String value) {
                  
          if(!ini.containsKey (key)) {
                      
          return;
                  }

                  ini.put (key, value);
              }

              
          /**
               * 保存INI信息
               * 
          */

              
          public static void saveIni (String k[]) {
                  
          try    {
                      FileWriter fw 
          = new FileWriter ("ADViewer.ini");
                      BufferedWriter bw 
          = new BufferedWriter (fw);
                      bw.newLine ();
                      
          for (int i = 0; i < k.length; i++{
                          bw.write (k[i] 
          + "=" + getIniKey (k[i]));
                          System.out.println(getIniKey (k[i]));
                          bw.newLine ();
                      }

                      
                      bw.close ();
                      fw.close ();
                  }
          catch (Exception ex) {
                      ex.printStackTrace();
                  }

              }

          }

              


          2  RandomAccessFile
              一邊讀一邊寫,還能移動指針

          /*
               * 讀取需添加的ini文件信息,并寫入到相應的ini文件中
               
          */

              
          public void write(String readFile, String writeFile) throws Exception {

                  RandomAccessFile rafRead 
          = new RandomAccessFile(readFile, mode);
                  RandomAccessFile rafWrite 
          = new RandomAccessFile(writeFile, mode);
                  
          //按行讀取
                  String lineStr = rafRead.readLine();
                  
          while (lineStr != null{
                      
          // 寫入一行后換行
                      lineStr += "\r\n";
                      
          //將指針移動到文件尾部
                      rafWrite.seek(rafWrite.length());
                      
          //寫入讀取的一行
                      rafWrite.write(lineStr.getBytes());

                      lineStr 
          = rafRead.readLine();
                  }


              }
          posted on 2009-10-09 15:25 lillian 閱讀(114) 評論(0)  編輯  收藏 所屬分類: java讀取操作ini文件

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 潼关县| 平乐县| 茂名市| 平南县| 金阳县| 乌什县| 大兴区| 林西县| 石林| 石台县| 饶河县| 交城县| 大余县| 克什克腾旗| 白城市| 罗江县| 东辽县| 黑水县| 博乐市| 乐平市| 封开县| 正阳县| 江安县| 左贡县| 鄂尔多斯市| 繁昌县| 霍城县| 永平县| 阳新县| 安徽省| 盘锦市| 军事| 长顺县| 泰安市| 岫岩| 南部县| 浦江县| 读书| 丹东市| 桑植县| 阳泉市|