/*
获取java程序运行的次数。
思路:
通过一个配置文件将运行次数进行记录。
每一次打开该程序时,都先加载这个文件获取其中的次数。
并对该次数自增,重新存回配置文件。
注意:次数可以直接用一个数值,但是如果,除了记录次数还要记录其他信息的时候,那么这些数值无法进行区分。
所以给这些数值都起了名字,出现了键值对。
步骤:
1,通过流关联配置文件,可是配置文件第一次不存在,所以最好将配置文件封装成File对象,并进行判断。
2,通过和流相结合的结合对象Properties的load方法,将流关联的数据存入到集合中。
3,通过集合的方法获取指定键所以对应的次数,并将该次数进行自增。
4,将集合中修改后的数据通过集合的store方法重新存入配置文件中。
*/
import java.util.*;
import java.io.*;
class RunCount
{
public static void main(String[] args) throws IOException
{
/**/
Properties prop = new Properties();
int count = 0;
File file = new File("runcount.ini");
if(!file.exists())
file.createNewFile();
FileInputStream fis = new FileInputStream(file);
prop.load(fis);
String value = prop.getProperty("count");
if(value!=null)
{
count = Integer.parseInt(value);
if(count==10)
{
System.out.println("次数已到,必须给钱,否则.....");
return ;
}
}
count++;
prop.setProperty("count",Integer.toString(count));
FileOutputStream fos = new FileOutputStream(file);
prop.store(fos,"");
fos.close();
fis.close();
// show();
}
public static void show()throws IOException
{
Properties prop = new Properties();
int count = 0;
File file = new File("runcount.ini");
FileInputStream fis = null;
try
{
fis = new FileInputStream(file);
prop.load(fis);
}
catch (FileNotFoundException e)
{
prop.setProperty("count",count+"");
}
String value = prop.getProperty("count");
if(value!=null)
{
count = Integer.parseInt(value);
if(count==3)
{
System.out.println("次数已到,必须给钱,否则.....");
return ;
}
}
count++;
prop.setProperty("count",Integer.toString(count));
FileOutputStream fos = new FileOutputStream(file);
prop.store(fos,"");
fos.close();
if(fis!=null)
fis.close();
}
}
分享到:
相关推荐
相比于NewRelic或者开源的,以及阿里的,本工具主打的是简单,我们只记录每个方法的执行次数和时间,并输出到json格式的日志文件中。基于javaagent的日志,你可以使用严丽同学开发的进行分析查询,或者可以自己去写...
如果需要自定义监控频率与监控时长,只需要在jar包所在目录下新建application.properties文件,修改下列字段即可 monitor.rate=60 #监控频率/秒 monitor.cron=0 0 0 * * ? #每日的0:00:00时刻清空数据 连续监控1个...
7.1 设置Undo/Redo的次数 7.2 使用撤消命令 7.2.1 创建一个例子 7.2.2 使用Edit Undo方法 7.2.3 使用标准工具栏中Undo控件 7.2.4 使用键盘撤消命令 7.3 使用Redo命令 7.3.1 使用Edit Redo方法 ...
7.1 设置Undo/Redo的次数 7.2 使用撤消命令 7.2.1 创建一个例子 7.2.2 使用Edit Undo方法 7.2.3 使用标准工具栏中Undo控件 7.2.4 使用键盘撤消命令 7.3 使用Redo命令 7.3.1 使用Edit ...
mysql:用户名:root密码:123456数据库的设置文件在resources / config / properties / db.properties ...问题解决:我所遇到的问题是我数据库使用的是8.0.11版本,但是mysql-connector-java驱动包使用的是5
mosquito 利用微信接口进行报警提示,可以动态配置报警规则,以及查看报警监控日志。...mosquito 有两个界面一个 role 界面用于添加报警规则,第二个界面是 log 用于统计报警的次数以及微信接口发送
3. FListBox.addItem 和FListBox.addItemAt 有什么用 □ A. 添加列表框 □ B. 使用Value(值)对话框添加项目 □ C. 添加下拉菜单 □ D. 给组合框添加项目 4. Library 中有一元件Symbol 1,舞台上有一个该元件的实例...
4)客户跟踪回访:将心理学上提出的人类记忆储能曲线形成客户跟踪曲线,以自动提醒的方式帮助销售人员把握回访客户的最佳时机,达到用最少的联系次数取得商机或获得订单,有效的缩短成交客户的开发周期,从而能够最...
Report Machine 2.4 =================== 这是一个报表控件包,For Borland Delphi Versions 3,4,5,6.100% 源码. 最后更新日期:2002.05.25. ... 需要用BDE Administrator建立一个Database Alias:...
对于一般的主从表,单表,你甚至只需要点动鼠标次数=你的数据字段个数就可以 完成一个完全自定义的,并且支持用户进行格式修改加工,重新设计格式的报表! 想想fast report 吧,report machine会fast ...
{* 返回某个字符串中某个字符串中出现的次数} function FindStr(ShortStr:String;LongStrIng:String):Integer; {测试通过} {* 返回某个字符串中查找某个字符串的位置} function SubStr(psInput:String; BeginPlace...