那个用Properties实现软件计数器的功能。开始调的很好的,后面一加try catch finally的close就不行了,Property装载不了Reader了。
代码如下:
- package com.cn.filedemo;
- import java.io.*;
- import java.util.Properties;
- public class UseCountByProperties {
- public static void main(String[] args) {
- FileReader fr = null;
- FileWriter fw = null;
- try {
- int count = 0;// 计数器为0
- File myfile = new File("countReader.ini");// 建立文件
- if (!myfile.exists()) {
- myfile.createNewFile();
- }
- fr = new FileReader(myfile);
- fw = new FileWriter(myfile);
- Properties prop = new Properties();
- prop.load(fr);// Properties装载这个文件
- prop.list(System.out);
- String value = prop.getProperty("time");// 取出值
- System.out.println(value);
- if (value!= null) {
- count = Integer.parseInt(value);
- }// 做下判断,不为空就转成count
- if (count > 5) {// 超过使用次数就提醒
- System.out.println("交钱");
- return;
- }
- System.out.println("使用次数"+count);
- count++;// 用这次就++
- prop.setProperty("time", count+"");// 存储
- prop.store(fw, "计数");// 写入
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (fr != null)
- fr.close();
- } catch (Exception e2) {
- e2.printStackTrace();
- }
- try {
- if (fw != null)
- fw.close();
- } catch (Exception e2) {
- e2.printStackTrace();
- }
- }
- }
- }
复制代码
我新建了个简易的,load的很好啊
- package com.cn.filedemo;
- import java.util.Properties;
- import java.io.*;
- public class tesst1 {
- public static void main(String[] args) throws IOException {
- Properties p=new Properties();
- FileReader fr=new FileReader("countReader.ini");
- p.load(fr);
- p.list(System.out);
-
- }
- }
复制代码 |
|