Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.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中替换后,阿拉伯语中的英语文本对齐方式正在发生变化_Java_Replace_Arabic - Fatal编程技术网

在Java中替换后,阿拉伯语中的英语文本对齐方式正在发生变化

在Java中替换后,阿拉伯语中的英语文本对齐方式正在发生变化,java,replace,arabic,Java,Replace,Arabic,我需要用阿拉伯语替换英文密钥,如客户名称、账号、密码值。我有占位符,比如客户名称、账号和密码 替换后,阿拉伯语文本的对齐方式发生变化,如下所示。有什么办法可以预防吗 public class TestArabic { public static void main(String...strings){ String text="عزيزي "+"\u202A"+" CUST_NAME "+"\u202C"+" ، ل حساب عدد هو: "+"\u202A"+" A

我需要用阿拉伯语替换英文密钥,如客户名称、账号、密码值。我有占位符,比如客户名称、账号和密码

替换后,阿拉伯语文本的对齐方式发生变化,如下所示。有什么办法可以预防吗

public class TestArabic
{
    public static void main(String...strings){
        String text="عزيزي "+"\u202A"+" CUST_NAME "+"\u202C"+" ، ل حساب عدد هو: "+"\u202A"+" ACC_NO "+"\u202C"+" و كلمة السر هي :"+"\u202A"+" PWD_VAL "+"\u202C"+" ، يرجى تغيير في تسجيل الدخول الأول";

        System.out.println(text);
        text = text.replace("CUST_NAME", "John");
        text = text.replace("ACC_NO", "1234");
        text = text.replace("PWD_VAL", "pass");

        System.out.println(text);
    }
}
输出


尝试在帐号末尾添加
从左到右的标记
字符:

" ACC_NO\u200E "

问题不是源于java,而是源于您在Eclipse中使用的控制台或输出窗口,只需按(右键CTRL+右键SHIFT)(基于系统配置)将输出调整为从右向左。
顺便说一句,我将文本修改为:

String text="عزيزي "+"" +" CUST_NAME "+""+" ،  الحساب  عدد هو: "+""+" ACC_NO "+""+" و كلمة السر هي :"+""+" PWD_VAL "+""+" ، يرجى تغيير في تسجيل الدخول الأول";

您好,谢谢您的回复。但产出没有变化。