Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java .concat无法读取空格_Java_Android_Linux - Fatal编程技术网

Java .concat无法读取空格

Java .concat无法读取空格,java,android,linux,Java,Android,Linux,我的代码有问题 public void setTmbhUserFtp(View v) { Spinner spinner = (Spinner) findViewById(R.id.spinner); Server server = serverlist.get(spinner.getSelectedItemPosition() - 1); EditText EditAdduser = (EditText) findViewById(R.id.Ed

我的代码有问题

public void setTmbhUserFtp(View v) {
        Spinner spinner = (Spinner) findViewById(R.id.spinner);
        Server server = serverlist.get(spinner.getSelectedItemPosition() - 1);
        EditText EditAdduser = (EditText) findViewById(R.id.EditAdduser);
        EditText EditPassworduser = (EditText) findViewById(R.id.EditPassworduser);
        String sTextAdduser = EditAdduser.getText().toString();
        String sTextPassworduser = EditPassworduser.getText().toString();

        if (server != null && sTextAdduser.length() > 0
            && sTextPassworduser.length() > 0) {
        final String ADDUSER = "sh /home/add_user.sh".concat(sTextAdduser) .concat(sTextPassworduser);
        FtpConnect u = new FtpConnect();
        Command o = new Command(getResources().getText(R.string.adduser)
                .toString(), ADDUSER, server);
        u.setCommand(ADDUSER);

        pd = ProgressDialog.show(actual,
                getResources().getString(R.string.PleaseWait), o.getName());
        actualThreadCommand = o;
        Thread thread = new Thread(actual);
        thread.start();

    } else {
        Toast.makeText(getBaseContext(),
                getResources().getText(R.string.gagal), Toast.LENGTH_LONG)
                .show();
    }

}
该代码用于linux中的excute,如下所示

sh /home/add_user.sh username password
但是,当我尝试从我的安卓系统的用户名和密码是一个

代码是这样的

sh /home/add_user.sh usernamepassword
如果用户名为irfan,密码为irfan,则代码为detect

sh /home/add_user.sh irfanirfan
所以用户名是irfanirfan,没有密码

代码add_user.sh为

useradd $1; echo -e "$2\n$2" | passwd $1
如何解决

final String ADDUSER = "sh /home/add_user.sh ".concat(sTextAdduser) .concat(sTextPassworduser);
after.concat(sTextAdduser)必须是空格

所以在linux中会执行

sh /home/add_user.sh irfan irfan

这样,您可以解决您的问题:

final String ADDUSER = "sh /home/add_user.sh "+sTextAdduser+" "+sTextPassworduser;

在linux中,使用反斜杠后跟空格在任何路径中添加空格。

这样我们可以在任何字符串中提供空格。如果您怀疑无法获得空格,请尝试打印它或尝试烘烤它。我已经检查了自己…顺便问一句。您遇到了什么错误??
final String ADDUSER = "sh /home/add_user.sh ".concat(sTextAdduser)
.concat(" ")
.concat(sTextPassworduser);
final String ADDUSER = "sh /home/add_user.sh "+sTextAdduser+"\\ "+sTextPassworduser;