黑马程序员技术交流社区

标题: 用 DataInputStream 读数据出现了问题 [打印本页]

作者: XinWen    时间: 2014-5-1 11:30
标题: 用 DataInputStream 读数据出现了问题
  1. public class Test3 extends Base{
  2.         //数字与汉字的转换码表
  3.         private static char[] mHanziTable = new char[]{
  4.                 '零','一','二','三','四',
  5.                 '五','六','七','八','九'
  6.         };

  7.         public static void main(String[] args) {
  8.                 transform();
  9.         }
  10.        
  11.         public static void transform(){
  12.                 //用来 存储 读入的 数字
  13.                 int _rawNumber = 0;
  14.                 // 输入 用于读取 基本数据 类型的流的引用
  15.                 DataInputStream _dataInputStream = null;
  16.                 //原始数据的 复件
  17.                 int _dupNumber = 0;
  18.                 // 汉字字符串的构造器
  19.                 StringBuilder _hanziBuilder = null;
  20.                 // 用于 存储 分解 数字的过程中的单个 数字
  21.                 int _digit = 0;
  22.                
  23.                
  24.                 // 该流 不用关闭,关联的是  系统的 基本输入流
  25.                 _dataInputStream = new DataInputStream(System.in);
  26.                 try {
  27.                         _rawNumber = _dataInputStream.readInt();
  28.                         Toast(""+_rawNumber);
  29.                 } catch (IOException e) {
  30.                         e.printStackTrace();
  31.                         Toast("读取失败");
  32.                 }
  33.                
  34.                 // 分解 数字
  35.                 _dupNumber = _rawNumber;
  36.                 _hanziBuilder = new StringBuilder();
  37.                 //考虑到用户可能输入 0
  38.                 if(_dupNumber == 0){
  39.                         _hanziBuilder.append(mHanziTable[0]);
  40.                 }
  41.                 while(_dupNumber > 0){
  42.                         _digit =  (_dupNumber%10);
  43.                         _hanziBuilder.append(mHanziTable[_digit]);
  44.                         _dupNumber/=10;
  45.                 }
  46.                
  47.                 //打印 最终 结果 需要反向打印
  48.                 Toast(_hanziBuilder.reverse().toString());
  49.         }
  50. }
复制代码
我 输入  123  给我打印的 825373453八二五三七三四五三
大家 帮帮忙看看






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2