Java 编辑与字符串相反的文本
我有一个Java 编辑与字符串相反的文本,java,android,Java,Android,我有一个EditText,并在其中显示值。我使用的是StringBuilder str = str.insert(0, value); System.out.println("str2:-"+str); showOutputEdit.setText(str.toString()); 如果我使用简单数字,它会正确显示数字,如 input:- 1,2,3 ouput:- 3,2,1 但是如果使用任何符号,它们在EditText中得到反转,但在android日志中没有得到 input:- 1,+
EditText
,并在其中显示值。我使用的是StringBuilder
str = str.insert(0, value);
System.out.println("str2:-"+str);
showOutputEdit.setText(str.toString());
如果我使用简单数字,它会正确显示数字,如
input:- 1,2,3
ouput:- 3,2,1
但是如果使用任何符号,它们在EditText
中得到反转,但在android日志中没有得到
input:- 1,+,9
edittext output:- 1,+,9
log output:- 9,+,1
我很困惑,为什么它们在EditText
中被颠倒了
str2:-٩+١value + showOutputEdit.getText().toString()٩+١
Edittext:- 9+1
您的
insert
代码错误,如果您指定0作为插入位置,它将在行乞时插入字符。相反,你应该:
showOutputEdit.setText(value + showOutputEdit.getText().toString());
但我想插入一个开头。我用的是阿拉伯语。哦,对不起,当你说为什么要反转文本时,我想你不想反转。很抱歉我将编辑答案。我认为您应该使用阿拉伯语的本地RTL支持,并将所有字符放在末尾。它将自动从右向左显示。您的系统语言是什么?可能是
EditText
检测到您正在从右向左键入一种语言(如阿拉伯语),因此在开头插入(左)在结尾插入(右)。utf-8是系统语言