• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Joan
博客园    首页    新随笔    联系   管理    订阅  订阅
关于THREAD线程中CurrentCulture与CurrentUICulture的学习

转:关于THREAD线程中CurrentCulture与CurrentUICulture的学习

分类: C# 2012-05-24 10:00 110人阅读 评论(0) 收藏 举报

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.Specialized;
using System.Collections;
using System.Globalization;
using System.Configuration;
using System.Diagnostics;
using System.IO;
using System.Threading;
namespace e1
{
   
class Program
   
{
       
static void Main(string[] args)
       
{
            CultureInfo userCulture 
= Thread.CurrentThread.CurrentCulture;
            Console.WriteLine(userCulture.Name);
            Console.WriteLine(userCulture.LCID);
            Console.WriteLine(userCulture.NativeName);
            Console.WriteLine(userCulture.DisplayName);
            Console.WriteLine(userCulture.TwoLetterISOLanguageName);
            Console.WriteLine((
100000).ToString("c"));

            CultureInfo usCulture 
= Thread.CurrentThread.CurrentUICulture;
            Console.WriteLine(usCulture.Name);
            Console.WriteLine(usCulture.DisplayName);
           
            Console.ReadLine();
        }
      
    }

}


MSDN描述
Thread.CurrentCulture 属性
获取或设置当前线程的区域性。
Thread.CurrentUICulture 属性获取或设置资源管理器使用的当前区域性以便在运行时查找区域性特定的资源。
当从控制面板更改设置后在第一次运行代码时,区域信息并没有改变,当第二次运行时,通过CurrentCulture 属性实例化的userCulture信息发生变化,但是通过CurrentUICulture 属性实例化的usCulture却没有发生变化。

 

CultureInfo.CurrentUICulture 属性是每个线程的设置,可返回当前用户界面区域性。该属性由 ResourceManager 类用于在运行时查找区域性特定资源。可以使用非特定区域性、特定区域性或 InvariantCulture 来设置 CurrentUICulture 属性。可以使用 Thread.CurrentThread 属性设置 CurrentCulture。

CultureInfo.CurrentCulture 属性是每个线程的设置,可确定日期、时间、货币和数字的默认格式、文本排序顺序、字符串比较以及大小写转换。CurrentCulture 属性不是一个语言设置。它仅包含与地理区域的标准设置相关的数据。因此,只能将 CurrentCulture 属性设置为特定区域性或 InvariantCulture。可以使用 Thread.CurrentThread 属性设置 CurrentCulture。

一句话:当程序运行时,CurrentUICulture属性用来决定加载什么样的资源,而CurrentCulture属性用来决定诸如货币、数字和日期如何格式化。

CurrentCulture属性的默认值是操作系统的User Locale,我们可以在控制面板里设置。
CurrentUICulture属性的默认值是操作系统用户界面语言。

CurrentCulture属性的值必须是一个特定的culture, 比如"fr-FR",不能是一个neutral culture, 比如"fr". 一个neutral culture 例如"fr"会产生问题,因为它适用于所有French语系的culture, 但是France, Belgium和Quebec使用不同的货币

作者:Joan
出处:http://www.cnblogs.com/Joans/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2012-08-13 11:41  Joans  阅读(3686)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3