java的格式化的流输入

  如我们前面提到的,你可以通过来自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的分解方法是相当简单的。下面的图解说明了把任意一个流分解成为标记的方法。

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值