当前位置:  技术问答>java相关

如何获得从命令行输入的数据?

    来源: 互联网  发布时间:2015-08-25

    本文导语:  各位前辈:我想问一下怎样才能得到从命令行输入的数据(字符串什么的,且不是用命令行参数实现)?如下有一个小代码: import java.io.*; public class Try {         public static void main(String[] arguments) {      ...

各位前辈:我想问一下怎样才能得到从命令行输入的数据(字符串什么的,且不是用命令行参数实现)?如下有一个小代码:
import java.io.*;

public class Try {
        public static void main(String[] arguments) {
                int c=0;
                final int a=10;
                System.out.println("Input number:");
                try{
                           c=System.in.read();
                }catch(IOException e){  }
                
                if(c==a)
                        System.out.println("true");
                else 
                        System.out.println("false");
        }
}

即使输入c=10,最后的结果也得不到c==a 为什么?请问该用什么代码才能实现数据的输入与接收?



|
import java.io.*;

public class LineIn{
    public static void main(String[] args) throws IOException{
    
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    
     System.out.print("input 3 number>");
     String line = in.readLine();
     int x = Integer.parseInt(line);
     line = in.readLine();
     int y = Integer.parseInt(line);
     line = in.readLine();
     int z = Integer.parseInt(line);
    
   System.out.println(x+y+z);   
   }
}

|
首先,你要清楚一点,Java的I/O是依赖于流的。你用read()方法得到的是一个字符流,也就是说你输入“10回车”,得到的是‘1’、‘0’和‘n’这三个字符,而不是一个int型的数10。
Java没有提供一种输入方法来从键盘读入一个字符串,然后自动转换为相应的数据类型。要做到这个,要使用类型包装器(type wrapper):Double、Float、Long……。具体到你的问题,要用Integer。代码如下:

int n;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
n = Integer.parseInt(str);

类似的,要想得到double型,就用
Double.parseDouble(str);
………

|
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
c=Integer.parseInt(s);

|
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int c = br.read();//返回的是输入字符的ASCII

String line=br.readLine();

|
可是问题还是存在,你只能一行一行读取,做个循环,就可以全部输出输入?我也正在研究这个问题



----------------------------------------
qQ:6117340

|
类型不同吧。

    
 
 

您可能感兴趣的文章:

  • 菜鸟问题--关于命令参数的获得 高分!
  • 请问如何通过命令来获得本机linux的ip地址?
  • 在freeBSD系统中用什么命令可以获得本机ip?
  • 如何用命令来获得 一个文件的修改时间?
  • (求助)Makefile 中如何获得系统命令结果
  • 请教如何获得shell命令的返回值?谢谢。
  • 如何获得linux下 命令行长度最长是多少?或者如何知道linux下,一个文件的一行最长是多少?
  • 请问如何在程序中获得shell命令输出的信息?
  • linux 下有这样的函数么:可以获得与sar命令类似的信息?
  • shell 文件中,要获得自己的路径,应该用什么命令?
  • gcc中(linux下)相关命令参数的意思 怎么获得? 有电子文档么?
  • 请问unix下哪个命令可以获得一个文件夹的大小
  • 希望获得vim命令的英文全称
  • 请教:在程序里用system启动一个命令,如何获得这个进程的正常输出和错误输出到一个字符串里?
  • shell下用date命令取得两个时间值,有没有办法获得它们的时间差?
  • 谁有top命令的源码?如何获得cpu使用率
  • 在LINUX下如何获得登录用户运行的SHELL命令?
  • 请问如何在鼠标点击xx button 的时候获得 JtextField 中的文本输入--有重分送
  • java的JComboBox设为可编辑的,但怎样获得用户自己输入得值?
  • 如何从java控制台获得用户输入?
  • Shell中如何获得tab键输入
  • jquery input输入框获得与失去焦点时显示、隐藏文字的小例子
  • 关于motif中获得用户输入的一个问题!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 怎样从表单数据中获得数值型变量(好像所有数据都是字符串型的)?
  • 如何获得刚插入数据的id递增值
  • GTK list 中的数据如何获得?
  • netfilter里如何获得TCP包的数据?
  • 如何在jsp网页中,获得orecle数据库中一个序列的当前值
  • 使用tcp协议发送数据, 如果获得系统底层将包发到客户端之间的耗时?
  • 如何获得机器上已经注册的所有ODBC数据源?
  • 如何最快地将获得的数据写入文件 ?
  • 解析mysql中如何获得数据库的大小
  • 请问用哈希表存储数据,那我怎么获得键的名字,而不是键的值,谢谢,在线等候
  • sql server数据库有没有专门的jdbc驱动程序,若有,请教怎样获得?
  • 请问用c/c++如何获得html页面中用户提交的数据(如表单,谢谢! (luoluobobo1 )
  • 从tablemodel里面检测到jtable一格的数据有问题如何让该格获得焦点继续编辑?
  • 从netfilter里注册的函数获得的sk_buff的数据包如何重组?
  • 获得SQL数据库信息的代码
  • 如何在directfb中获得png图像解码后的数据
  • 如何获得数据库表中的所有字段?
  • 数据库中日期型字段,如何在 java 中分别获得其中的年月日
  • php表单请求获得数据求和示例
  • jquery获得表单所有数据的实例分享
  • 用sysconf(_SC_CLK_TCK)可以获得时钟的hz,还有什么方法可以获得内核时钟的hz
  • gtk的获得属性的问题!急!
  • 调用DOM对象的focus使文本框获得焦点
  • 获得客户端的显示分辨率
  • 怎样一个一个的获得指定目录下的文件名.
  • linux下什么语言获得参数是~1
  • 求救:关于在BSD下如何通过文件路径使用核内函数获得文件句柄?
  • jQuery获得内容和属性示例代码
  • jQuery获得内容与属性方法
  • mysql获得60天前unix时间思路及代码
  • 用javamail怎么获得邮件内容?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3