波斯语是一种从右到左的语言。我想向用户显示已成功保存的消息。但是,该东西(实体)的名称有时是英文,有时是波斯语。因此,我应该将一些波斯语单词与英语单词的占位符组合如下:
string.Format("مطلب {0} با موفقیت ذخیره شد", contentTitle);
现在,如果我们假设contentTitle是How to solve your problem
,那么连接的字符串将是:
مطلب How to solve your problem با موفقیت ذخیره شد.
这不是我想要的。理想的结果应该是:
.با موفقیت ذخیره شد How to solve your problem مطلب
我该怎么办?似乎string.Format
方法在用从右到左的语言连接从左到右的语言方面存在问题。我希望实现的内容与CSS Writing中的direction: rtl;
非常相似。
答案 0 :(得分:2)
字符串类对RTL一无所知,Windows有自己的规则来处理“混合内容”(即一个字符串中的rtl和ltr)......
您可以尝试LRO
,LRE
等。在这些字符串中使用Unicode“提示”以获得所需的结果 - 请参阅http://en.wikipedia.org/wiki/Bi-directional_text上的表格