import Java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
/**
* 使用Scanner获取键盘输入 (默认UTF-8)
* Scanner是一个基于正则表达式的文本扫描器,它可以从文件、输入流、字符串中解析出基本类型值和字符串值
* 主要方法:hasNextXxx(); 是否还有下一项 nextXxx();获得下一个输入项。
* @author root
*
*/
public class TestScanner {
/**
* @param args
* @throws FileNotFoundException
*/
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in); //System.in代表标准输入,就是键盘输入
// sc.useDelimiter("\n"); //把回车符作为分隔符 reset();取消
System.err.println("输入整数:" + sc.nextInt()); //获得输入的整数
System.out.println("输入双精度:" + sc.nextDouble()); //获得输入的双精度
System.out.println("输入字符串:" + sc.next()); //获得输入字符串
System.out.println("获得一行数据:" + sc.nextLine()); //获得输入一行数据
Scanner scFile = new Scanner(new File("a.txt"));
System.err.println("a.txt文件内容如下:");
while (scFile.hasNextLine()) //读取文件内容
{
System.out.println(scFile.nextLine());
}
//判断是否还有下一项(字符串)
while (sc.hasNext())
{
System.out.println("键盘输入的字符串内容是:" + sc.next());
}
}
}
//特别注意的是JDK5.0以前的版本不能这样处理,这多少有些令人沮丧,还好我们用swing包里的方法也不难实现,只需把构造函数里的内容改为如下即可:
//
// this.name = JOptionPane.showInputDialog("Name?");
// String input = JOptionPane.showInputDialog("AGE?");
// this.age = Integer.parseInt(input);
//
//当然,别忘了导入swing包:
// import javax.swing.*;