定义一个功能,记录程序运行的次数。满足五次后,给出提示,试用次数已到,请注册! (Properties)

本文介绍了一个程序运行计数器实现方案,当达到指定次数后,程序将提示用户注册。通过使用Properties文件进行数据持久化,确保计数器值在应用程序生命周期内保持连续。
package cn.properties;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

public class chengxuyunxingcishu {

	/**
	 * @param args
	 * @throws IOException 
	 */
	/*
	 * 需求: 定义一个功能,记录程序运行的次数。满足五次后,给出提示,试用次数已到,请注册!
	 * 思路:
	 *  1,需要计数器
	 *  2,计数器的值生命周期要比应用程序的周期要长,需要对计数器的值进行持久化。
	 *     count=1,里面存储的应该是键值方式,map集合,要和设备上的数据关联,需要IO技术。
	 *    集合+IO = Properties
	 */
	public static void main(String[] args) throws IOException {
		
		 boolean b = checkCount();
		  if(b)
			 run();

	}

	private static void run() {
		System.out.println("软件运行");
		
	}

	private static boolean checkCount() throws IOException {
     
		boolean isRun=true;
		File configfile= new File("tempfile\\count.properties");
		if(!configfile.exists())
		{
			configfile.createNewFile();
		}
		
		int count=0;
		Properties prop = new Properties();
		FileInputStream fis = new FileInputStream(configfile);
		prop.load(fis);
		
		String value = prop.getProperty("count");
		if(value!=null)
		{
			count=Integer.parseInt(value);
			if(count>5)
			{ 
				isRun=false;
				System.out.println("试用次数已到,请注册!");
			}
		}
		count++;
		prop.setProperty("count", Integer.toString(count));
		
		FileOutputStream fos = new FileOutputStream(configfile);
		prop.store(fos, "");
		fos.close();
		return isRun;
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值