properties

6 9

java中读取properties配置文件,并完成简单的加密解密

本文概要:读取properties文件,并对其中是值进行简单的加密,写入另一个文件.然后读取加密后的文件,进行解密操作.

这是今天去公司笔试的题目.

原题大概如下:

有一个properties文件,里面有若干个配置属性,现有一个接口, 

public interface Encode { 
    public void encode(String fileInputName,String fileOutputName) throws Exception; 
    public void decode(String fileInputName,String fileOutputName) throws Exception; 
}

encode方法功能:读取配置文件,把其中每项的值的每个字母ASCII码值+10,然后把密码后的配置文件写入fileOutputName文件中. 
decode方法功能与encode相反. 
写一个类实现这个接口,并写出main方法进行测试.

哎...悲剧的我压根儿就没用过properties文件,自然是不做啊,我直接用最原始的方法去读熟稔串进行解析的,感觉应该也没有错的.回来后在网上查了下. 
其实很简单.

6 9

java中操作properties属性文件的简单教程

java中常会用到properties文件作为配置文件,可以很容易的读取和设置,来对工程进行一些配置.
今天去公司笔试,考了这题,一点儿不会.我完全是按最原始的方法去读文件,写的.回来后在网上搜了下,感觉还是比较简单的,在这儿献个丑.

prop.properties文件

name=许嵩
age=21

TestProp.java文件

package org.zzp.test;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.UnsupportedEncodingException;
import java.util.Enumeration;
import java.util.Properties;
public class TestProp {
   public static String get(String s){
      String result=null;
      try {
         result=new String(s.getBytes(”ISO_8859_1”),”UTF-8”);
      } catch (UnsupportedEncodingException e) {
         e.printStackTrace();
      }
      return result;
   }
   
   @SuppressWarnings(”unchecked”)
   public static void main(String[] args) {
      Properties prop=new Properties();
      try {
         FileInputStream fis=new FileInputStream(”prop.properties”);
         prop.load(fis);
         Enumeration names=prop.propertyNames();
         while(names.hasMoreElements()){
            String name=(String)names.nextElement();
            System.out.print(name);
            System.out.println(”:”+get(prop.getProperty(name)));
         }
         prop.put(”sex”, “”);
         prop.store(new FileOutputStream(”out.txt”), “commet”);
      } catch (Exception e) {
         e.printStackTrace();
      }
   }
}
程序中,读取prop.properties文件,打印中其中的所有属性.然后增加了一个属性.再把配置写入到另一个文件中.
如果要修改其中一个属性的话,也很简单.只用prop.setProperty(“key”,”value”);就可以了