点击查看:2015计算机等级考试二级Java入门教程章节汇总
点击查看:2015计算机等级考试二级Java入门教程第九章汇总
9.4 格式化的流输入
如我们前面提到的,你可以通过来自java.io.包中的StreamTokenizer类的格式化输入得到许多帮助。标记(token )是指一个数据项,例如一个数字或一个字符串,它通常包含来自流中的若干个连续的字符。由于它可以从流中读取字符,并且使数据成为符合要求的一连串标记或数据项,所以这个类的名字叫做StreamTokenizer.在默认情况下,一个标记或者是一个数字,它可以包括一个减号、阿拉伯数字或一个小数点:或者是两个单引号或双引号括起来的一个字符串。以字母开头,并且以空格作为定界,由字母、阿拉伯数字、小数点和减号按任意顺序组成一系列字符也作为一个字符串标记处理,并称为一个字。任何非空格的,设有用单引号或双括号括起来而且不是注释的一部分的其他字符则被读做null.StrearnTokenizer类忽略了Java风格的注释,注释从//开始,或括在/*和*/之间,忽略空格及newline。
你可以从一个字符输入流对象构造一个StreamTokenizer对象,例如,你可以使用下面的语句构造一个对应标准输入流的StreamTakenizer对象。
StreamTokenizer mystream=new streamTokenizer(
new FileReader(FileDescr(ptor.out));
你能够使一个标记--换句话说是一个数据项--从使用的流中被读取,并通过调用StreamTokenizer对象的nextToken()方法来构造 StreamTokenizer对象:
int dataType=mystream.nextToken();
通过该方法返回的整数表示所读标记的种类。从流中所读的该标记本身存储在StreamTokenizer对象的两个实例之一中。如果数据项是一个数字,它存放在一个public数据成员nval中,类型为double.如果数据项是一个括起来的字符串或一个字,一个对String对象的引用存放在public数据成员sval中,类型当然是String.有关把流分解成为token的分解方法是相当简单的。下面的图解说明了把任意一个流分解成为标记的方法。
我们来看一下这个类如何从键盘读数据项。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |