使用阿拉伯字符串连接DateTime字符串

时间:2012-10-02 14:38:12

标签: c# asp.net

我正在尝试将一个阿拉伯字符串与一个领先的DateTime连接起来,我已尝试过各种方式,但DateTime总是以字符串的结尾结束

var arabicText = "Jim قام بإعادة تعيين هذه المهمة إلى John";
var dateTime = DateTime.Now;

System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("ar-AE");

string test1 = arabicText + " :" + dateTime.ToString();
string test2 = arabicText + " :" + dateTime.ToString(ci);

所以当显示它时,它应该显示

  

JimقامبإعادةتعيينهذهالمهمةإلىJohn:02/10/2012

但我似乎总是以

结束
  

02/10/2012:JimقامبإعادةتعيينهذهالمهمةإلىJohn

任何想法都会被提及

4 个答案:

答案 0 :(得分:5)

您可以使用此代码

var strArabic = "Jim قام بإعادة تعيين هذه المهمة إلى John";
var strEnglish = dateTime.ToString() ; 
var LRM = ((char)0x200E).ToString();  // This is a LRM
var result = strArabic  + LRM +  strEnglish ; 

答案 1 :(得分:1)

尝试使用string.Format

string test1 = string.Format("{0}:  {1}", arabicText, dateTime.ToString());

这应该产生你正在寻找的结果。

答案 2 :(得分:0)

阿拉伯文字从右到左,所以你最终得到的版本是正确的。 如果你真的想要另一种方式,为什么不交换参数顺序?

答案 3 :(得分:0)

您是否尝试过string.format()方法?也许它可以解决你的问题。