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;