资讯专栏INFORMATION COLUMN

Java知识点总结(JavaIO- Scanner类 )

CarlBenjamin / 894人阅读

摘要:知识点总结类知识点总结后提供的输入数据类,此类位于包中,不仅可以完成输入数据的操作,还可以方便地对输入数据进行验证。

Java知识点总结(JavaIO- Scanner类 )

@(Java知识点总结)[Java, JavaIO]

JDK 1.5后提供的输入数据类,此类位于java.util 包中,不仅可以完成输入数据的操作,还可以方便地对输入数据进行验证。

public class Demo11 {
 
  public static void add() {
    int i = getInt();
    float j = getFloat();
    System.out.printf("%d+%1.2f=%1.2f", i, j, i + j);
  }
 
  //从文件中读取数据
  public static void  getDataFromFile(){
    File f = new File("E:"+File.separator+"test.txt");
    StringBuffer sb = new StringBuffer();
    try {
      Scanner sc = new Scanner(f);
      sc.useDelimiter("
");// (设置读取的分隔符)空格处理
      while(sc.hasNext()){ //读取下一行
        sb.append(sc.next()+"
");
      }
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    }
    System.out.println(sb.toString());
  }
  
  // 整数的输入
  public static Integer getInt() {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入整数:" );
    if (sc.hasNextInt()) {
      return sc.nextInt();
    } else {
      System.out.println("输入的不是整数,请重新输入:" );
      return getInt();
    }
 
  }
 
  // 小数的输入
  public static Float getFloat() {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一个小数:" );
    if (sc.hasNextFloat()) {
      return sc.nextFloat();
    } else {
      System.out.println("输入的不是小数,请重新输入:" );
      return getFloat();
    }
 
  }
 
  //日期输入
  public static Date getDate() {
    Scanner sc = new Scanner(System.in);
    String str = "";
    System.out.println("请输入一个日期(yyyy-MM-dd):" );
    if (sc.hasNext("^d{4}-d{2}-d{2}$")) {
      str = sc.next();
      try {
        return new SimpleDateFormat("yyyy-MM-dd").parse(str);
      } catch (ParseException e) {
        e.printStackTrace();
        return null;
      }
    } else {
      System.out.println("您输入的不是日期,请重新输入!" );
      return getDate();
    }
    
  }
 
  public static void main(String[] args) {
    /*
     * Scanner sc = new Scanner(System.in); System.out.println("输入数据:");
     * sc.useDelimiter("
"); String str = sc.next();
     * System.out.println("输入的数据为:" + str);
     */
    //add();
    //System.out.println(getDate());
    
    getDataFromFile();
    /*西瓜、    苹果、      
    香蕉
    橘子
    。。。*/
  }
 
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/69205.html

相关文章

  • Java识点总结JavaIO- System对IO的支持与Scanner

    摘要:错误信息不在控制台显示,而是在文件中输入重定向类后提供的输入数据类,此类位于包中,不仅可以完成输入数据的操作,还可以方便地对输入数据进行验证。 Java知识点总结(JavaIO- System类对IO的支持与Scanner类 ) @(Java知识点总结)[Java, JavaIO] [toc] System类 showImg(https://segmentfault.com/img/b...

    张利勇 评论0 收藏0
  • Java识点总结JavaIO-File

    摘要:知识点总结类知识点总结类类可以进行创建和删除文件等操作。使用一个类,则必须向类的构造方法中传递一个文件路径。 Java知识点总结(JavaIO-File类) @(Java知识点总结)[Java, JavaIO] [toc] File类 File类可以进行创建和删除文件等操作。使用一个File类,则必须向File类的构造方法中传递一个文件路径。 showImg(https://segme...

    KavenFan 评论0 收藏0
  • Java识点总结JavaIO- BufferedReader

    摘要:知识点总结类知识点总结类用于从缓冲区中读取内容,所有的输入字节数据都将放在缓冲区中中定义的构造方法只能接收字符输入流的实例,所以必须使用字符输入流和字节输入流的转换类将字节输入流转变为字符流。 Java知识点总结(JavaIO- BufferedReader类) @(Java知识点总结)[Java, JavaIO] [toc] showImg(https://segmentfault....

    alanoddsoff 评论0 收藏0
  • JavaIO : 不同情境使用的流

    摘要:我们在前面已经提到的几种流就有它们的使用情境和和主要用于解决不限于纯文本的二进制文件的输入输出情境。同时,如果使用带有缓冲区的缓冲输入输出流的话会使得读写的效率更高,有助于更快地完成不限于纯文本的二进制文件的读写。 不同情境的流: 流的种类很多,针对不同的IO数据交换情景我们可以选择不同的流来完成任务。 我们在前面已经提到的几种流就有它们的使用情境: 1. FileInputStrea...

    yintaolaowanzi 评论0 收藏0
  • Java识点总结JavaIO-字节流)

    摘要:知识点总结字节流知识点总结字节流在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据时要使用输入流读取数据,而当程序需要将一些数据保存起来时,就要使用输出流。字节流主要操作类型数据,以数组为准,主要操作类是类和类。 Java知识点总结(JavaIO-字节流) @(Java知识点总结)[Java, JavaIO] [toc] 字节流 在程序中所有的数据都是以流的方式进行传输或保...

    BigTomato 评论0 收藏0

发表评论

0条评论

CarlBenjamin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<