当前位置: 首页 > 面试题库 >

DataInputStream不推荐使用readLine()方法

吕俊美
2023-03-14
问题内容

我在java 6上。DataInputStream in = new DataInputStream(System.in);用于读取用户输入。不推荐使用readLine()的情况。读取用户价值的方法是什么?

DataInputStream in = new DataInputStream(System.in);
int num;
try
{
  num = Integer.parseInt(in.readLine()); //this works

  num = Integer.parseInt(in);  //just in doesnt work.
}
catch(Exception e)
{
}

请在不建议使用readLine()时进行解释。


问题答案:

InputStream从根本上说是二进制结构。如果要读取 文本
数据(例如从控制台),则应使用Reader某种描述。要将转换InputStreamReader,请使用InputStreamReader。然后在BufferedReader周围创建一个Reader,您可以使用读取一行BufferedReader.readLine()

更多选择:

  • 使用Scanner内置回合System.in,然后致电Scanner.nextLine
  • 使用Console(从中获得System.console())并致电Console.readLine


 类似资料:
  • 我需要使用DataInputStream,因为我需要弃用的readLine()功能,我不知道输入文件的确切文件格式(即使用什么行尾),但也需要读取二进制编码的原语。 这与这个问题类似: 是否有一个类公开Java中的非缓冲readLine方法? 我的建议是用这样的东西 并使用DataInputStream类中可以找到的readLine()方法内容(这类似于所引用问题中接受的答案)。然而,我不完全理解

  • 我使用hystrix api版本1.5.4。我看到的方法已被弃用。替代方法是什么?

  • 问题内容: 我已经看到了许多在API上使用注释以将其标记为“需要尽快替换”的示例。 但是,在几乎所有这些情况下,代码开发人员不仅继续使用已弃用的API,而且还抑制了弃用警告。 似乎API开发人员的最佳意图最终是创建更多与已实现的业务逻辑无关的代码- 如果不赞成使用API​​,但在抑制相关警告的情况下继续使用它,则似乎充其量只是代码的降级,并且在IMHO最差的情况下替换不推荐使用的库时,可能会导致应

  • 问题内容: 我收到此警告,但是该程序仍然可以正常运行。 MySQL代码向我显示了一条PHP消息: 不推荐使用:mysql_connect():不推荐使用mysql扩展,以后将被删除:在第2行的C:\ xampp \ htdocs \ task \ media \ new \ connect.inc.php中使用mysqli或PDO代替 我的页面是 这是什么意思,我该如何消除该消息? 问题答案: 有

  • 问题内容: 我正在尝试使用和进行单元测试。 当我不包含注释时,测试将失败。但 不推荐使用MockitoJUnitRunner类型 我正在使用Mockito 2.6.9。我应该怎么做? 问题答案: 现在确实已弃用,应该改为使用。如您所见,仅软件包名称已更改,该类的简单名称仍为 。 摘录自javadoc : 移至,该课程将在Mockito 3中删除

  • 新的侦听器(又名OnCameraMoveListener())方法onCameraMove()没有CameraPosition CameraPosition输入变量,所以我很迷惑:有没有方法回收我的旧代码? 这里有一些参考资料。