我想用希伯来语写一条消息给一个文本文件。我尝试了以下方法:
using (StreamWriter sw = File.CreateText(path + FileName))
{
sw.WriteLine(sms);
}
然而,消息从左到右出现。我怎么能从右到左书写?
答案 0 :(得分:2)
字符串是一个Chars数组,所以你可以
Char[] tempArray = sms.ToCharArray()
Array.Reverse(tempArray)
sms = new String(tempArray)
这应该反转数组,因此当你写它时会从右向左阅读。
答案 1 :(得分:2)
这是一个小例子:
void Main()
{
string lines = "First line.\r\nSecond line.\r\nThird line.";
var = new System.IO.StreamWriter("c:\\test_eng.txt");
file.WriteLine(lines);
file.Close();
string hebrew = @"מספרים רצים מימין לשמאל ?";
file = new System.IO.StreamWriter("c:\\test_heb.txt");
file.WriteLine(hebrew);
file.Close();
}
打开文件后,您会发现希伯来语是希伯来语,并且从右到左显示。
您是否遇到过任何有趣的行为?
您也可以尝试将字符串文化定义为希伯来语:
// Creates and initializes the CultureInfo which uses the international sort.
CultureInfo myCIintl = new CultureInfo( "he", false );
有关here (MSDN)的更多信息。
更多思考 - >我怀疑上面的内容对于显示器会有很大的改变,例如它对日期会更有用。但是atm,我无法在我的控制台输出上看到希伯来语...你输出的是什么?只是txt,HTML或其他什么?