2011-08-24 73 views
2

波斯語是從右到左的語言。我想向用戶顯示一條消息,說明某些內容已成功保存。然而,這個東西(實體)的名字有時是英文的,有時是波斯文的。因此,我應該如下結合了佔位符的波斯語詞彙的英文單詞:現在string.Format問題連接從左到右的語言與從右到左語言

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;非常相似。

+2

這是string.Format()的問題還是渲染引擎顯示輸出? – devio

+0

我調試了代碼,這是'string.Format()'的問題。 –

+0

Ridi ... ....... –

回答

2

String類不知道RTL和Windows有它自己的規則來處理「混合內容」任何東西(即RTL和LTR在一個字符串)...

您可以LRO實驗, LRE等在這些字符串中的Unicode「提示」以實現期望的結果 - 請參閱表格http://en.wikipedia.org/wiki/Bi-directional_text

相關問題