定义一个功能,记录程序运行的次数。满足五次后,给出提示,试用次数已到,请注册! (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;
	}

}

发布了56 篇原创文章 · 获赞 14 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章