0

我的程序将 String 7_example 转换为 Arabic.String 分为两个s[0]=7s[1]=example. 字符串 s[1] 被转换为阿拉伯语并存储为字符串缓冲区,然后我的任务是在结束位置附加 7,因为我使用如下的 append 函数 convertedWord.append(s[0]);

为什么我在起始位置得到 7?为什么在这种情况下附加功能不同。我也尝试过使用字符串附加,但结果是一样的。

public String conversion(String data)
{
ResourceBundle obj1 = ResourceBundle.getBundle("ApplicationResources_ar_AR");
data= obj1.getString(Queries);  
return data;
}

*如果是字母或单词,它最后附加,但对于数字,它首先出现

4

1 回答 1

1

我猜这是因为阿拉伯语是从右到左的,所以 7 实际上是在字符串的末尾,但它显示在开头的位置。

您可以尝试通过两件事来解决您的问题:

I - 添加一个额外的虚拟字符,然后检查 7 是否显示在末尾(您可以尝试空格)。

代码:

StringBuffer s = new StringBuffer();
s.append(convertedWord);
s.append("7.");
String result = s.toString();

II - 在起始位置附加 7(使用 StringBuffer,检查有无空格)

代码:

StringBuffer s = new StringBuffer();
s.append(convertedWord);
s.insert(0," 7 ");
String result = s.toString();
于 2013-03-14T10:39:25.100 回答