在java中本地的输入,特别是在控制台上,可以使用java.util.Scanner这个来来操作,下面是一段实例代码:
public class Test {
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("what is your name?");
String name=scanner.nextLine();
System.out.println("How old are you?");
String age=scanner.nextLine();
System.out.println("name:"+name+" age:"+age);
}
}
这个类主要用来从控制台上读取输入的数据。由于它不适合从控制台上读取用户名和密码,在J2SE 6版本中引入了Console类来实现这个目的。使用方法如下:
Console console=System.console();
String username=console.readLine("Username:");
String password=console.readLine("password:");
它的API目前设计的很粗糙,只有行读取。不如Scanner用的方便。但是对于任何一个通过控制台窗口启动的程序,都可以使用Console对象,否则其可用性将于所使用的系统相关联。
格式化中主要格式化的部分按照使用程度来说依次是日期的格式化,其次是数据的格式化,最后是字符串的格式化。日期的格式化大多被放到一些程序的Util包中,作为辅助类的静态方法使用,例如:
/**
* from date to String
* @param date
* Date type
* @param style
* format style
* @return
* date String
*/
public static String DateFormat(Date date,String style){
SimpleDateFormat sdf=new SimpleDateFormat(style);
return sdf.format(date);
}
然后在当前类中添加几个常量的style,就可以快速的格式化你需要的日期了
java中数字的格式化沿用了C语言的格式化规则,没有任何的改变。字符串的格式化会显得很复杂,简单的可以使用String的方法进行格式化,复杂的要用到正则表达式进行格式化处理。
文件的读取要用到Scanner类来操作,首先用File对象构建一个Scanner对象:
Scanner in=new Scanner(new File("my.txt"));
如果文件路径中有反斜杠,那么在反斜杠前面再加一个反斜杠。
文件的写入需要构建一个java.io.PrintWriter对象来操作:
PrintWriter pw=new PrintWriter("my.txt");
然后文件读写就可以使用API中的相关方法进行操作了。