为日期时间设置自己的文化或更改当前文化

时间:2013-10-10 21:18:41

标签: c# cultureinfo

我正在尝试在我的项目中设置自定义文化。但我有一些问题,我搜索谷歌,发现以下代码。但我有一些问题,请在评论中观察。

using System;
using System.IO;
using System.Globalization;

public class Example 
{
    public static void Main() 
    {
        // Persist the date and time data.
        StreamWriter sw = new StreamWriter(@".\DateData.dat");

        // Create a DateTime value.      
        DateTime dtIn = DateTime.Now;
        // Retrieve a CultureInfo object.
        CultureInfo invC = CultureInfo.InvariantCulture;

        // Convert the date to a string and write it to a file.
        sw.WriteLine(dtIn.ToString("r", invC));//what r mean?. if r is the custem culture      variabel then how we determin it.
        sw.Close();

        // Restore the date and time data.
        StreamReader sr = new StreamReader(@".\DateData.dat");
        String input;
        while ((input = sr.ReadLine()) != null) 
        {
            Console.WriteLine("Stored data: {0}\n" , input);    

            // Parse the stored string.
            DateTime dtOut = DateTime.Parse(input, invC, DateTimeStyles.RoundtripKind);

            // Create a French (France) CultureInfo object.
            CultureInfo frFr = new CultureInfo("fr-FR");
            // Displays the date formatted for the "fr-FR" culture.
            Console.WriteLine("Date formatted for the {0} culture: {1}" , 
                       frFr.Name, dtOut.ToString("f", frFr));// f?

            // Creates a German (Germany) CultureInfo object.
            CultureInfo deDe= new CultureInfo("de-De");
            // Displays the date formatted for the "de-DE" culture.
            Console.WriteLine("Date formatted for {0} culture: {1}" , 
                       deDe.Name, dtOut.ToString("f", deDe));
        }
        sr.Close();
    }
}

1 个答案:

答案 0 :(得分:1)

这是一个显示DateTime.ToString()方法的许多格式值的链接。我看到没有提到小写“r”,但你的代码输出似乎与“R”或“r”相同。

http://msdn.microsoft.com/en-us/library/zdtaw1bw.aspx

您要写入文件的DateTime值将基于任何文化更改之前的不变文化。你把它写出来,然后在获得一些新的文化信息之前把它读回来。

我不得不猜测你在问什么,因为除了代码之外没有任何问题。如果我误解了你的要求,请提供更多细节。

也许如果你要显示你的输出,那会有所帮助。

啊,这是一个实际上说“r”与“R”相同的链接。所以现在你有关于那部分问题的文档:

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx