zoukankan      html  css  js  c++  java
  • Day_14【IO流】扩展案例1_缓冲区字符输入、输出流,键盘录入,contains()方法的统一运用

    分析以下需求,并用代码实现

    •  实现一个验证码小程序,要求如下:
       	1. 在项目根目录下新建一个文件:data.txt,键盘录入3个字符串验证码,并存入data.txt中,要求一个验证码占一行;
       	2. 键盘录入一个需要被校验的验证码
          	如果输入的验证码在data.txt中存在:在控制台提示验证成功,如果不存在控制台提示验证失败
      

    思路

    •  1.键盘录入三个验证码用字符串接收
       2.创建输出流对象关联data.txt
       3.将三个验证码写入data.txt当中, 关闭输出流
       4.键盘录入一个需要校验的验证码并用字符串接收
       5.创建输入流对象关联data.txt
       6.创建集合对象
       7.读取data.txt 将读取到的数据存储到集合中
       8.使用集合调用contains方法, 将需要校验的字符串传入
       9.根据返回的结果, 打印是否存在
      

    代码

    package com.itheima;
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.Scanner;
    
    public class Test1 {
    	public static void main(String[] args) throws IOException {
    		// 创建键盘录入对象
    		Scanner sc = new Scanner(System.in);
    
    		// 键盘录入三个验证码用字符串接收
    		System.out.println("请输入第一个验证码:");
    		String s1 = sc.nextLine();
    		System.out.println("请输入第二个验证码:");
    		String s2 = sc.nextLine();
    		System.out.println("请输入第三个验证码:");
    		String s3 = sc.nextLine();
    
    		// 创建输出流对象关联data.txt
    		BufferedWriter bw = new BufferedWriter(new FileWriter("data.txt"));
    
    		// 将三个验证码写入data.txt当中, 关闭输出流
    		bw.write(s1);
    		bw.newLine();
    		bw.write(s2);
    		bw.newLine();
    		bw.write(s3);
    		bw.newLine();
    		bw.flush();
    
    		bw.close();
    
    		// 键盘录入一个需要校验的验证码并用字符串接收
    		System.out.println("请输入需要校验的验证码:");
    		String s4 = sc.nextLine();
    
    		// 创建集合对象
    		ArrayList<String> array = new ArrayList<String>();
    
    		// 读取data.txt 将读取到的数据存储到集合中
    		BufferedReader br = new BufferedReader(new FileReader("data.txt"));
    
    		String line;
    		while ((line = br.readLine()) != null) {
    			array.add(line);
    		}
    
    		// 释放资源
    		br.close();
    
    		// 使用集合调用contains方法, 将需要校验的字符串传入
    		if (array.contains(s4) != true) {
    			System.out.println("验证失败");
    		} else {
    			System.out.println("验证成功");
    		}
    	}
    
    }
    

    控制台输出内容
    console

  • 相关阅读:
    【BZOJ 1579】 1579: [Usaco2009 Feb]Revamping Trails 道路升级 (最短路)
    有限广播地址与直接广播地址
    人生苦短之我用Python篇(线程/进程、threading模块:全局解释器锁gil/信号量/Event、)
    SQL基础二
    Ubuntu命令:sudo、shutdown、apt-get、vim
    SQL基础一
    MPLS基础一
    第一章 Linux系统入门
    P4简介:数据平面的编程语言
    人生苦短之我用Python篇(安装第三方库、正则表达式)
  • 原文地址:https://www.cnblogs.com/zzzsw0412/p/12772519.html
Copyright © 2011-2022 走看看