您的位置:首页 > 编程语言 > Java开发

java 软件免费使用次数到后注册

2013-12-20 15:49 302 查看
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;

/*
* 模仿收费软件免费使用次数后不能使用
*
* 如果定义一个计数器,在软件运行时计数,
* 是不现实的,因为计数器变量随着软件的运行而存在,
* 随着软件的运行结束而消失,是内存中的。
* 所以要建立一个配置文件,来记录软件运行的次数
*/
public class RegistrationDemo {

public static void main(String[] args) {
// 建立能加载配置文件的属性的持久化对象
Properties prop = new Properties();

// 建立存放配置信息的文件的对象
File file = new File("config.ini");
// 建立一个输入流,准备读取配置文件的信息
FileReader fr = null;
try {
// 如果该配置文件不存在,创建
if (!file.exists())
file.createNewFile();
// 将读取流关联到配置文件
fr = new FileReader(file);
// 通过读取流将配置文件的信息加载到Properties集合中
prop.load(fr);
/*
* 定义一个用来存放程序使用次数的变量
* 因为Properties集合中存放的都是字符串,
* 但是计算次数是要int的,因为每使用一次+1
*/
int count = 0;

String value = prop.getProperty("time");
// 第一次的时候为null,因为文件是新创建的
if (value != null) {
count = Integer.parseInt(value);
// 如果次数大于等于5就不再让用了
if (count >= 5) {
System.out.println("免费使用次数到了,请购买");
return;
}
}
// 存在次数+1,不存在由0+1
count++;

// 然后要把属性修改
prop.setProperty("time", count + "");

// 最后千万别忘记写回文件,光修改是写不回文件的
FileWriter fw = new FileWriter(file);
prop.store(fw, "use count");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}

/*
* 。。。。。后面这些才是程序正真运行的 内容,上面是判断是否可以运行
*/
}
}
/*
* 早期的软件都是这样的,
* 免费使用删除配置文件就又能用了,
* 所以后的人会把配置文件放在system32目录下
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: