java - 为什么我的 readLine 返回 null?

标签 java null readline

我的代码:

String correr = "msg /SERVER:" + NomePC.replace(" ", "") + " * /TIME:300 \"" + Mensagem + "\"";
    Process textoo = null;
    try {
        textoo = Runtime.getRuntime().exec(correr);
    } catch (IOException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    BufferedReader innTexto = new BufferedReader(new InputStreamReader(textoo.getInputStream()));

    String lineTexto=null;

    try {
        lineTexto = innTexto.readLine();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    if (lineTexto != null) {
        System.out.println("Não passou");
    }
    else if (lineTexto == null) {
        System.out.println("A sua mensagem foi enviada com sucesso para " + NomePC + " ás: " + dataFormatada);
    }

所以我的 readLine 总是为空,我不知道为什么。我已经打印出来确认一下。当我直接在 cmd 中执行命令时,我得到了答案。那么为什么它不读取该行呢?

Im trying with an array of strings. Still not working

最佳答案

问题是这不是您应该指定命令的方式。您的命令由命令参数组成,您必须分隔每个命令参数!

因此构建一个 String 数组,其中包含:msg,然后是 /SERVER:xxxx 等,并将其传递给 exec

----编辑

String []cmd = new String[THE_RIGHT_NUMBER_OF_ARGS_COMMAND_INCLUDED];
cmd[0] = "msg";
cmd[1] = "/SERVER:xxxx";
cmd[2] = "*";
cmd[3] = "/TIME:300";
...
textoo = Runtime.getRuntime().exec(cmd)

关于java - 为什么我的 readLine 返回 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35221308/

相关文章:

java - 无法选择自定义 EditText 子类中的文本

java - 文本框中的文本

Javascript - 从外部数组中删除对我的对象的引用

null - 为什么取消引用空原始指针未定义行为?

string - SWIFT:为什么 "NSURL(string:"返回 Nil,即使它在浏览器中是有效的 url?

java - 元素不可见——XPath 仅查找样式

java - 通过jprofile分析内存中所有垃圾

java - 检查该行是否包含/*

perl - 将 Term::ReadLine 与 Unicode 输入结合使用

readline - 使用 GNU Readline;如何在同一程序中添加 ncurses?