<%@ page contentType="text/html; charset=gb2312"%> JDK6.0新特性:用Console开发控制台程序
网站公告:   ◆北天JAVA技术网热情为java爱好者服务,本网内容包括JAVA(JSP、servlet、EJB、webservice、j2ee、javabean、应用服务器、JavaScript),数据库(MYSQL、SQL Server、Sybase、Oracle、DB2、数据库综合知识),设计研究(设计模式、Struts、Spring、Hibernate、设计框架、设计综合知识),WEB2.0新技术(主要介绍AJAX),以及各种技术的入门、实例、例子等等,欢迎各位多来坐坐!◆  诚邀各位JAVA爱好者加盟!◆  本网站内容丰富,更新快,保证每周20篇以上!  
加入收藏
设为首页
联系站长
承接项目
  相关资源:网站首页 | 免费培训学院 | 技术论坛 | JAVA聊天室 | 作家专栏 | 开发工具 | 认证考试 | 会员俱乐部
  JAVA技术初学者园地 | jsp与servlet | javascript | Java源代码 | EJB | web service | 应用服务器 | JAVA综合知识
  设计研究设计模式 | 设计框架 | Struts | Spring | Hibernate | 开源项目 | 面向对象设计 | 设计综合知识
  数 据 库MYSQL | SQL Server | Sybase | Oracle | DB2 | Informix | Access | 数据库综合知识
  其他资源:AJAX新技术 | 网站开发 | ERP软件 | OA办公软件 | 商业智能BI | 开发综合知识 | 承接项目 | 项目试用

 
 
JDK6.0新特性:用Console开发控制台程序
     发布者: 发布时间:2007-01-25
 JDK6中提供了java.io.Console类专用来访问基于字符的控制台设备. 你的程序如果要与Windows下的cmd或者Linux下的Terminal交互,就可以用Console类代劳. 但我们不总是能得到可用的Console, 一个JVM是否有可用的Console依赖于底层平台和JVM如何被调用. 如果JVM是在交互式命令行(比如Windows的cmd)中启动的,并且输入输出没有重定向到另外的地方,那么就可以得到一个可用的Console实例. 下面代码演示了Console类的用法:

/**
* @author chinajash
*/
public class ConsoleTest {
 public static void main(String[] args) {
  Console console = System.console();//获得Console实例
  if(console!=null){//判断console是否可用
   String user = new String(console.readLine("Enter user:")); //读取整行字符
   String pwd = new String(console.readPassword("Enter passowrd:")); //读取密码,密码输入时不会显示
   console.printf("User is:"+user+"\n");
   console.printf("Password is:"+pwd+"\n");
  }else{
   System.out.println("Console is unavailable");
  }
 }
}

  如果在NetBean5.5里面运行上面程序,会输出

  Console is unavailable

  表示Console不可获得,那是因为JVM不是在命令行中被调用的或者输入输出被重定向了. 但是如果我们在命令行中运行上面程序(java ConsoleTest),程序能够获得Console实例,并执行如下:

Enter user:chinajash
Enter passowrd:
User is:chinajash
Password is:chinajash

  在这里可以看到输入密码时,控制台时不显示这些密码字符的,但是程序可以得到输入的密码字符串,这与Linux下面输入密码的情况是一样的。

(转载文章请保留出处:北天JAVA技术网(www.java114.com))
 
更多精彩文章:
Ajax原理详细说明
Ajax的定义与总结
在AJAX程序中实现互斥揭秘
Ajax 框架ZK 2.2 发布
强强携手 将AJAX带入Eclipse
通过Mysql的语句生成后门木马的方法
 
最近评论:
        
你曾悄悄的来过!
wow gold,wow gold,wow gold,ffxi gil max(6958)
        
你曾悄悄的来过!
wow gold,wow gold,wow gold,ffxi gil max(2466)
        
你曾悄悄的来过!
wow gold,wow gold,wow gold,ffxi gil max(909)
        
你曾悄悄的来过!
wow gold,wow gold,wow gold,ffxi gil max(7725)
        
冰封的往事!
wow power leveling,wow gold,WoW Gold,wow gold max(7085)
        
标 题:   
内 容:   
 
                                  
 
免责声明:该文章由网友发表,如果对您造成侵权,请联系站长

首页 - 承接项目 - 网站地图 - 联系我们 -
版权所有北天JAVA技术工作室 ICP证号:粤ICP备06079815号