常见时区缩写可参考:

http://time.123cha.com/knowledge/6.html

常见时区缩写如下:

  IDLE +12:00 国际日期变更线,东边 
  NZDT +13:00 新西兰夏时制 
  NZST +12:00 新西兰标准时间 
  NZT +12:00 新西兰时间 
  AESST +11:00 澳大利亚东部标准夏时制 
  ACSST +10:30 中澳大利亚标准夏时制 
  CADT +10:30 中澳大利亚夏时制 
  SADT +10:30 南澳大利亚夏时制 
  AEST +10:00 澳大利亚东部标准时间 
  EAST +10:00 东澳大利亚标准时间 
  GST +10:00 关岛标准时间,俄罗斯时区 9 
  LIGT +10:00 澳大利亚墨尔本 
  SAST +09:30 南澳大利亚标准时间 
  CAST +09:30 中澳大利亚标准时间 
  AWSST +09:00 澳大利亚西部标准夏时制 
  JST +09:00 日本标准时间,(俄罗斯时区 8) 
  KST +09:00 韩国标准时间 
  WDT +09:00 西澳大利亚夏时制
  SST +02:00 瑞典夏时制 
  BST +01:00 英国夏时制 
  CET +01:00 中欧时间
  FST +01:00 法国夏时制 
  MET +01:00 中欧时间 
  MEWT +01:00 中欧冬时制
  NDT -02:30 纽芬兰(Newfoundland)白昼时间
  ADT -03:00 大西洋白昼时间 
  AWT -03:00 (未知) 
  BRT -03:00 Brasilia 时间 
  NFT -03:30 纽芬兰(Newfoundland)标准时间 
  NST -03:30 纽芬兰(Newfoundland)标准时间 
  AST -04:00 大西洋标准时间(加拿大) 
  ACST -04:00 Atlantic/Porto Acre 夏令时 
  ACT -05:00 Atlantic/Porto Acre 标准时间 
  EDT -04:00 东部白昼时间 
  CDT -05:00 中部白昼时间 
  EST -05:00 东部标准时间 
  CST -06:00 中部标准时间 
  MDT -06:00 山区白昼时间 
  MST -07:00 山区标准时间 
  PDT -07:00 太平洋白昼时间 
  AKDT -08:00 阿拉斯加白昼时间 
  PST -08:00 太平洋标准时间 
  YDT -08:00 Yukon 白昼时间 
  AKST -09:00 阿拉斯加标准时间 
  HDT -09:00 夏威仪/阿拉斯加白昼时间 
  YST -09:00 Yukon 标准时 
  MART -09:30 马克萨司群岛时间 
  AHST -10:00 夏威夷-阿拉斯加标准时间
  HST -10:00 夏威夷标准时间 
  CAT -10:00 中阿拉斯加时间 
  NT -11:00 州时间(Nome Time) 
  IDLW -12:00 国际日期变更线,西边

那如何解析如 "IDLW -12:00" 这样的字符串呢,其实很简单,把代码贴在下面以做积累:

  /// <summary>
/// 从字符串转化timezone
/// </summary>
/// <param name="timezone">如: PST -08:00</param>
/// <returns></returns>
static bool TryParseTimezone(string timezone,out TimeSpan timeSpan)
{
if (string.IsNullOrEmpty(timezone))
{
Debug.Log("<color=red>timezone is empty</color>");
timeSpan = new TimeSpan();
return false;
} string[] words = timezone.Split(new char[] { ' ', ':' }, StringSplitOptions.RemoveEmptyEntries);
if (words.Length != )
{
Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>");
timeSpan = new TimeSpan();
return false;
} int hour;
if (!int.TryParse(words[].TrimStart('+', '-'), out hour))
{
Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>");
timeSpan = new TimeSpan();
return false;
} int minute;
if (!int.TryParse(words[], out minute))
{
Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>");
timeSpan = new TimeSpan();
return false;
} bool negative = words[].StartsWith("-");
hour = negative ? -hour : hour;
minute = negative ? -minute : minute;
timeSpan = new TimeSpan(hour, minute, );
return true;
}

TryParseTimezone

转载请注明出处:http://www.cnblogs.com/jietian331/p/6382630.html

c#如何解析时区字符串的更多相关文章

  1. js中解析json对象:JSON.parse()用于从一个字符串中解析出json对象, JSON.stringify()用于从一个对象解析出字符串。

    JSON.parse()用于从一个字符串中解析出json对象. var str = '{"name":"huangxiaojian","age&quo ...

  2. 使用 dynamic 标记解析JSON字符串 JDynamic :支持Json反序列化为Dynamic对象

    使用 dynamic 标记解析JSON字符串  http://www.cnblogs.com/taotaodetuer/p/4171327.html 1 string jsonStr = " ...

  3. 字串符相关 split() 字串符分隔 substring() 提取字符串 substr()提取指定数目的字符 parseInt() 函数可解析一个字符串,并返回一个整数。

    split() 方法将字符串分割为字符串数组,并返回此数组. stringObject.split(separator,limit) 我们将按照不同的方式来分割字符串: 使用指定符号分割字符串,代码如 ...

  4. jq 解析josn字符串

    1. var obj = jQuery.parseJSON("${ruleModel.rules}"); 2. var obj = eval("("+" ...

  5. json解析json字符串时候,数组必须对应jsonObjectArray,不能对应JsonObject。否则会解析错误。

    json第三方解析json字符串时候,json数组必须对应jsonObjectArray,不能对应JsonObject.->只要是[]开头的都是json数组字符串,就要用jsonArray解析 ...

  6. tinyXml直接解析XML字符串

    一直都用tinyxml直接LoadFile来解析XML,发现原来也可以直接解析XML字符串. XML文件: <?xml version=\"1.0\" encoding=\& ...

  7. C#解析JSON字符串总结

    JSON文件读取到内存中就是字符串,.NET操作JSON就是生成与解析JSON字符串. 操作JSON通常有以下几种方式: 1. 原始方式:按照JSON字符串自己来解析. 2. 通用方式[★★★★★]: ...

  8. 《JS高级程序设计》笔记 —— 解析查询字符串

    今天在继续翻阅<JS高级程序设计>的时候,正好翻到location对象这一小节,其中有一部分就是讲的解析查询字符串.看到这个内容立马想到了做去哪儿秋招笔试题的时候有这么一道题. 去哪儿笔试 ...

  9. java实现解析二进制文件(字符串、图片)

    1.需求说明,实现细节要求: 解析二进制文件 files\case10\binary,其中包含一个字符串和一张图片,数据文件格式为字符串数据长度(2字节)+字符串内容+图片数据长度(4字节)+图片数据 ...

随机推荐

  1. dbclient python ---influxdb -install -relay--http write--read.[create db]

    1s=1000ms 1ms=1000 microseconds 1microsecond=1000 nanoseconds+01:00 from influxdb import InfluxDBCli ...

  2. c# List获取重复项

    List<Test> t = new List<Test>() { ,name="车辆"}, ,name="车辆"}, ,name=&q ...

  3. set的经典应用

    set的经典应用 刚开始用map标记一个测试点超时了 ┭┮﹏┭┮: 用set的find 减少了循环提高了效率 #include <bits/stdc++.h>using namespace ...

  4. swift中 ?和 !的区别

      可选类型(?)与强制解析运算符(!) ?是一种判断后再拆包的语法糖 !是一种强制拆包的语法糖   当你不确定有值的时候就可以用  ? 当你确定有值的时候可以用  !     ?的几种使用场景:1. ...

  5. SpringBoot-@value自定义参数

    自定义参数 配置文件值 name=itmayiedu.com 代码:       @Value("${name}")       private String name; @Res ...

  6. 数据重组:对一堆相似字典进行分类统计(shidebin)

    数据重组 # 需求说明:将data_source分类统计,并输出为如下data_final的形式: # data_final ===> # { # 'area': [{'place': '南山区 ...

  7. wordpress如何去掉generator

    用wordpress建站经常会出现一些显而易见的标签,比如说作者<meta name="generator" content="WordPress 4.9" ...

  8. Amazon SQS(Simple Queue Service) 简单介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/hongchangfirst/article/details/25877059 SQS即Simple ...

  9. 003-pro ant design 前端权限处理-支持URL参数的页面

    前天需要增加MD5引用 https://www.bootcdn.cn/blueimp-md5/ 1.修改权限文件(CheckPermissions.js)使用自定义权限 2.配置异常页面 2.1.创建 ...

  10. element

    <el-table-column label="地址" prop="address"> <template slot-scope=" ...