首页 > 软件测试/ 正文
Java从控制台中读取数据方法
2012-09-15 23:04:46 ℃引言
从控制台中读取数据是一个比较常用的功能,在 JDK 5.0 以前的版本中的实现是比较复杂的,需要手工处理系统的输入流。有意思的是,从 JDK 5.0 版本开始,能从控制台中输入数据的方法每增加一个版本号,就有一种新增的方法,这也增加了选择的种类,可以依据不同的要求来进行选择。下面来看一下,各个版本中如何从控制台中读取数据以及各自的优缺点。
1 JDK 1.4 及以下版本读取的方法
JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的输入流,再桥接至字符流从字符流中读入数据。示例代码如下:
import java.io.IOException;
import java.io.InputStreamReader;
public class Test1 {
public static void main(String[] args) {
String str = readString(请输入字符串:);
System.out.println(readString 方法的输入: + str);
}
/**
* 使用系统的输入流,从控制台中读取数据《br/》
* 用于所用的JDK版本
* @param prompt 提示信息
* @return 输入的字符串
*/
private static String readString(String prompt) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
try {
System.out.print(prompt);
str = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
}
从上面的代码段来看,这种控制台输入的方法非常地麻烦,为了能读取整行的数据,采用了BufferedReader类来进行处理,而且在读取的过程中还需要捕获IOException.不过这是 JDK 1.4 及以下版本中从控制台读取数据唯一的办法。还有一种非控制台读入数据的办法,就是采用 Swing 中的JOptionPane,会弹出一个非常漂亮的输入对话框让使用者输入数据,但这是一种比较另类的做法,不推荐使用。
import javax.swing.JOptionPane;
public class Test2 {
public static void main(String[] args) {
String str = readStringFromDialog(请输入字符串:);
System.out.println(readStringFromDialog 方法的输入: + str);
}
/**
* 使用JOptionPane的输入对话框,输入字符串《br/》
* 用于所用的JDK版本
* @param prompt 提示信息
* @return 输入的字符串
*/
private static String readStringFromDialog(String prompt) {
return JOptionPane.showInputDialog(prompt);
}
}
上面的两种方法都有个共同的缺点--只能读取字符串,若需要读取其他类型的数据需要手工进行转换。
- 上一篇:如何利用Java生成JPG缩略图
- 下一篇:Java并发编程之同步互斥问题
更多安卓系统开发入门,安卓系统是谁开发的,安卓系统开发培训,安卓系统开发教程,asp服务器软件,asp.NET软件相关文章
- Java的内部类和匿名类剖析
- 使用Java管理千台规模Linux服务器
- Java连接DB2数据库开发应用程序的步骤
- 专访史亮:带你走进探索式测试
- 软件测试管理以及与自动化测试的完美结合(下)
- 接口测试原则之测试代码中的判断
- 基于代码的场景测试
- UI测试的设计层次
- 基于Google产品用户体验测试方式的启发
- 实战 GUI 产品的自动化测试,第 3 部分:如何提高测试结果分析的效率
- 软件测试的前途与职业发展
- 走在自动化软件测试的道路上(二)------我们应该做什么?
- 学习TDD:TDD的好处
- 三年QA工作的感想与体会
- 软件质量保证的误区
- 浅谈软件可靠性工程的应用
- 软件测试储备是一项长期的软件投资
- 项目质量模型——数据区间离散化问题探究
- 教你怎么看笔记本电脑配置!
- CMD命令集全部放送
- BIOS密码全解
- 电脑文件压缩包安全小知识
- 购买品牌电脑注意事项
- 使用批处理文件——常用命令
- 为什么液晶显示器对人体更健康
- 学习软件开发需要做什么准备
- 测试下MySQL 的加密的性能怎么样
- 想参加短期的软件开发及网站开发培训,去哪里好
- 软件测试适合初中毕业的男生去学吗
- 搜索
-
- 热门标签