java的数据输入:从控制台输入数据.doc

java的数据输入:从控制台输入数据.doc

ID:50991794

大小:110.50 KB

页数:6页

时间:2020-03-08

java的数据输入:从控制台输入数据.doc_第1页
java的数据输入:从控制台输入数据.doc_第2页
java的数据输入:从控制台输入数据.doc_第3页
java的数据输入:从控制台输入数据.doc_第4页
java的数据输入:从控制台输入数据.doc_第5页
资源描述:

《java的数据输入:从控制台输入数据.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、java的数据输入:从控制台输入数据Java控制台是一种图形用户界面(GUI),其作用有二:一是输入数据,二是显示输出结果。通过在控制台的输入输出,就使用户能完成配置、监视、维护和故障排除等工作。Java控制台虚拟机是否具有控制台取决于底层平台,还取决于调用虚拟机的方式。如果虚拟机从一个交互式命令行开始启动,且没有重定向标准输入和输出流,那么其控制台将存在,并且通常连接到键盘并从虚拟机启动的地方显示。如果虚拟机是自动启动的,例如由后台作业调度程序启动,那么它通常没有控制台。因此,对于普通微机里的java虚拟机来说,通常控制台就是指的显

2、示器和键盘,即:用显示器输出结果、用键盘输入数据。由于输出相对比较简单,这里主要讨论输入数据的方式。从控制台输入数据的方式有多种,jdk1.4以前主要是使用标准输入流的方式,jdk5.0增加了使用Scanner类的方式,jdk6.0又增加了使用Console类的方式。7.8.1使用标准输入流的方式标准输入流在7.6.2中已经讨论过,例7-13和例7-14的数据就是从控制台(键盘)输入的,办法很简单,即使用标准输入流System.in获得。也可以将System.in桥接至字符流,从字符流中读入数据。 例7-22文件复制程序,本例中先使用

3、InputStreamReader获取标准输入流System.in,再用字符流BufferedReader包装InputStreamReader,以读取源文件名和目标文件名。1:      importjava.io.*;2:      publicclassExample7_22{3:      publicstaticvoidmain(String[]args){4:      try{5:      BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in

4、));6:      StringsrcFile=null,dstFile=null;7:      System.out.print("请输入源文件名:");8:      srcFile=br.readLine();//用缓冲字符流获得源文件名9:      System.out.print("请输入目标文件名:");10:   dstFile=br.readLine();//用缓冲字符流获得目标文件名11:   byte[]data=newbyte[1];12:   BufferedInputStreambis=newBuffe

5、redInputStream(newFileInputStream(srcFile));13:   BufferedOutputStreambos=newBufferedOutputStream(newFileOutputStream(dstFile));14:   while(bis.read(data)!=-1)bos.write(data);15:   bos.flush();16:   System.out.println("文件复制成功!");17:   bis.close();18:   bos.close();19:  

6、 }catch(IOExceptione){20:   e.printStackTrace();21:   }22:   }23:   } 可见利用标准输入流进行控制台输入的方式非常麻烦:如果从键盘获取的是字符串,需要采用BufferedReader类来进行处理;如果获取的是其他类型数据,需要手工进行转换;在读取的过程中还必须捕获IOException。不过这是JDK1.4及更早版本中从控制台读取数据唯一办法。7.8.2使用Scanner类的方式从JDK5.0开始,java.util包中增加了Scanner类,它是一个可以使用正则表达

7、式来解析基本类型和字符串的简单文本扫描器。Scanner类从字面上讲是“扫描”的意思,它把给定的字符串解析成Java的各种基本数据类型,用于分解字符串的默认的分隔符是空格,也可以定制。其构造方法如表7-15。  表7-15Scanner类的构造方法方法描述Scanner(Filesource)Scanner(Filesource,StringcharsetName)构造一个新的Scanner,其值是从指定文件扫描获得。后者指定了字符集。Scanner(InputStreamsource)Scanner(InputStreamsourc

8、e,StringcharsetName)构造一个新的Scanner,其值是从指定的输入流扫描获得。后者指定了字符集。Scanner(Readablesource)构造一个新的Scanner,其值是从指定源扫描获得。Sca

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。