IO流实现模拟软件试用的功能
 import java.io.*;
 public class TryOut {
     /**
      * IO流模拟软件试用次数的功能
      * 这里注意try里BufferedOutputStream不要和InputStream放在同一个try里,因为写入的时候他默认会清空原文件的值
      *
      * @param args
      */
     public static void main(String[] args) {
         try (
                 BufferedInputStream bis = new BufferedInputStream(new FileInputStream("config.txt"))
         ) {
             int temp = bis.read();
             int count = temp ^ 66;
             if (count > 0 && count <= 3) {
                 count--;
                 System.out.println("您的试用次数还剩" + count + "次");
                 BufferedOutputStream bos = null;
                 try {
                     bos = new BufferedOutputStream(new FileOutputStream("config.txt"));
                     bos.write(count ^ 66);
                     bos.flush();
                 } catch (FileNotFoundException e) {
                     e.printStackTrace();
                 }
             } else {
                 System.out.println("您的试用次数已用尽,请购买正版使用!");
             }
         } catch (FileNotFoundException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
     /**
      * 初始试用次数方法
      */
     public static void code() {
         try (
                 BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("config.txt"))
         ) {
             bos.write(3 ^ 66);
             bos.flush();
         } catch (FileNotFoundException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
 }
大致思路就是把试用次数加密写入到一个txt里,然后通过读取这个txt来让count自减,直到count为0的时候也就代表试用次数用尽了.
IO流实现模拟软件试用的功能的更多相关文章
- 代码实现:当我们下载一个试用版软件,没有购买正版的时候,每执行一次就会提醒我们还有多少次使用机会用学过的IO流知识,模拟试用版软件,试用10次机会,执行一次就提示一次您还有几次机会,如果次数到了提示请购买正版
		
package com.loaderman.test; import java.io.BufferedReader; import java.io.FileReader; import java.io ...
 - Java基础知识强化之IO流笔记09:File类功能
		
详见如下: Android(java)学习笔记87:File类使用
 - Java中的IO流(四)
		
上一篇<Java中的IO流(三)>把IO流中的文件及目录操作的对象File类记录了一下,本篇把本不属性IO流但又和IO流有关系的一个对象作一下记录,此对象本属于集合框架里的一个子集,即Pr ...
 - JavaEE基础(二十一)/IO流
		
1.IO流(字符流FileReader) 1.字符流是什么 字符流是可以直接读写字符的IO流 字符流读取字符, 就要先读取到字节数据, 然后转为字符. 如果要写出字符, 需要把字符转为字节再写出. 2 ...
 - day21<IO流+&FIle递归>
		
IO流(字符流FileReader) IO流(字符流FileWriter) IO流(字符流的拷贝) IO流(什么情况下使用字符流) IO流(字符流是否可以拷贝非纯文本的文件) IO流(自定义字符数组的 ...
 - java基础第十五篇之IO流和递归算法
		
FileInputStream : 输入流 int available() : 一次读取所有的字节数 read() : 将文件上的字节读取到内存的数组中 FileOutputStream : 输出流 ...
 - JavaEE基础(二十二)/IO流
		
1.IO流(序列流) 1.什么是序列流 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推. 2.使用方式 整合两个: ...
 - day22<IO流+>
		
IO流(序列流) IO流(序列流整合多个) IO流(内存输出流) IO流(内存输出流之黑马面试题) IO流(对象操作流ObjecOutputStream) IO流(对象操作流ObjectInputSt ...
 - Java中的IO流体系
		
Java为我们提供了多种多样的IO流,我们可以根据不同的功能及性能要求挑选合适的IO流,如图10-7所示,为Java中IO流类的体系. 注:这里只列出常用的类,详情可以参考JDK API文档.粗体标注 ...
 
随机推荐
- ssh 使用密钥无法登入Linux系统
			
今天测试密钥登入linux系统时 出现如下问题: root@compute01:~# ssh alicxxx@xxx.com -p -i alickicxxxxxxx.key @@@@@@@@@@@@ ...
 - 手动开发PHP模板引擎 一 (35)
			
模板叫做TPL,模仿于smarty模板引擎. 我们所说的模板是Web模板,是主要由HTML标记组成的语言来编写的页面,但也有如何表示包含动态生成内容的方式(解析标签).模板引擎是一种软件库,允许我们从 ...
 - java学习笔记—Servlet技术(11)
			
如果大家要开发一个动态的网站,那么就必须要学习一种动态的网页开发技术.那么在SUN提供的JavaEE中主要包含两种开发动态网页的技术:Servlet和JSP技术. Servlet技术简介 Servle ...
 - 【Oracle 12c】CUUG OCP认证071考试原题解析(29)
			
29.choose the best answer Evaluate the following query: SQL> SELECT promo_name || q'{'s start dat ...
 - “全栈2019”Java异常第十四章:将异常输出到文本文件中
			
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
 - k_means算法的C++实现
			
首先画出k_means算法的流程图:
 - hive连接mysql遇到的问题
			
启动hive之前应该先启动metastore,也是在bin目录下:./hive --service metastore &然后再启动hive: ./hive 今天连接hive时总是报错:Una ...
 - 生成allure测试报告之后,服务器端口无法访问查看生成的report,可能是这样引起的。
			
1. 检查防火墙 2. 如果机器有安装ADsafe,请关闭adsafe后重试
 - Mac下利用SSH进行传输文件(转)
			
//1.从服务器上下载文件 scp username@servername:/path/filename /var/www/local_dir(本地目录) //例如scp root@192.168.0 ...
 - mono修改代码模板
			
新建android application是在这里修改模板D:\prostu\Microsoft Visual Studio 10.0\Common7\IDE\ProjectTemplatesCach ...