有一堆变量名和与之对应的值放在一个map(key为变量名 value为与之对应的值)里面,现在要遍历一个文件文件,当遇到与map里面的某个key名称相同的时候就用对应的那个valu替换掉文本里的内容。大家给个好的算法。
解决方案 »
- javaSE怎么实现联机应用,做四人打牌游戏用的?
- 求 swing美化包和主题包
- java键盘事件
- 有几个实体类,我想让其中所有的double类型的属性在输出的时候都不用科学计数法显示,请问该怎么做
- 字符串1@22@3@,用split切割时,如果一个@后为'',会发生数组越界的情况,这种情况如何处理。
- 高手指教:在java下通过url获取远端图片,保存到本地
- arraylist可用for循环顺序取出数据,为什么还要使用Iterator
- finalize问题:结果不是我所想象的
- 帮忙给看看这个异常是怎么回事?
- DefaultHandler类谁用过?
- 怎么样得到一个字符串的后面几个字符?
- 求java高手联系方式(qq or msn)希望在线指导!!问题很简单,进来就知道.50分送!!!!!!!
强烈建议你用正则表达式.jdk1.4自带的,功能强大,你就用正则的替换功能:
给你个例子:
今天看到论坛上有人问屏蔽手机号码怎么做,其实用jdk自己带的正则表达式库可以很好的解决。
下面是我写的屏蔽程序:import java.util.regex.*;public class ReplaceTel{
public static void main(String[] args) throws Exception{
Pattern p = Pattern.compile("13[0-9]{9}");
Matcher m = p.matcher("your tel is : 13331239924;but my is 13347215555");
String result = m.replaceAll("XXXXXXXXXXX")
System.out.println(result);
}
}具体技术细节可以在google上搜索一下
key1 value1
key2 value2
key3 value3
这类简单的格式的话,你顺着读文件就好了,每读到一组key和value
if(map.get(key)!=null) map.put(key,value)