这个问题有点尴尬啊。有大神吗?

写一个小代码,实现这样的一个效果
第一次运行:欢迎使用本软件,第1次使用免费
第二次运行:……第2次使用免费
第三次运行:……第3次使用免费
第四次运行:本软件只能免费三次,想要继续使用,请充值
然而这题难就难在,每次运行后虚拟机都停止了,再次运行都是从1开始,无法实现累加。

这个问题的关键点在于如何记录下来使用次数这个值,因为每次程序结束之后内存里的数据都清空了,所以把这个次数存到外存即可,可以通过文件读写,把数据存到本地的一个txt文件里,每次启动读取文件读取这个值,每次程序结束运行之前把这个值更新一下,或者使用数据库也是一样的思路

弄注册表吧 新建一个键值 然后运行一次 读一次记录 加+1 保存 如果到了4次 提示 就ok了

虽然java读取注册表之后限制了java跨平台的特性,但是在实际的应用中还是会用到的。java读取windows的注册表,我根据网上前人的提示,总结了三种方法

1.使用java API【java.util.prefs.Preferences】

优点:java API中的类,使用简单方便

缺点:操作范围有限。

          64位系统下只能在

                 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Prefs]

                 [HKEY_CURRENT_USER\Software\JavaSoft\Prefs]中操作。

详解地址

2.某一高人写的使用的invoke方法【如高人看到该文章,请联系我】

由于这几天为了排错,参考了大量的资料,所以实在忘记了该大侠是谁,如您看到文章,请把您下载源码的链接发送发私信给我,核实之后一定标注并感谢。

优点:相对与API来说,操作的范围相对较大。可在[HKEY_CURRENT_USER]和[HKEY_LOCAL_MACHINE]中读写NE]中读写。相对于第三种方法来说,简单方便。

缺点:不知是我不会用还是怎么了,有时会有一些节点的数据读不出来,特别是自定义的节点,像安装软件生成的节点。

详解地址

3.使用com.ice.jni.registry.

这个类对于研究过java读取注册表的程序猿来说就非常熟悉了。它是采用了JNI技术,读取的注册表。

优点:这个包的优点就是灵活了,可以随意的读取注册表中的数据,在我使用的过程中,未出现读不出的情况。

缺点:因为太灵活了,注册表又是非常非常的终于,所以要是一不小心写错了操作的路径,那我只能希望你曾备份过注册表。

基本提示到这里 其他的你自己去搞API 自己baidu吧

用一个变量存储运行的次数,在退出前想办法存到文件里就行,当然不加密的话