コード例 #1
0
ファイル: LBFDestHelper.cs プロジェクト: JesonMars/helper
        public string TransNameToPin(string name)
        {
            var result = new StringBuilder();

            foreach (var c in name)
            {
                var en = TranslateHelper.JuHeZiDian(c.ToString());
                result.Append(en.ToUpper());
                result.Append(" ");
            }
            return(result.Length > 0 ? result.Remove(result.Length - 1, 1).ToString() : "");
        }
コード例 #2
0
        /// <summary>
        /// 地区翻译为拼音
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        public static TransCountyToPinYinModel TransCountyToPinYin(string data)
        {
            var result = new TransCountyToPinYinModel()
            {
                IsNormal = true, PinYin = ""
            };

            if (string.IsNullOrEmpty(data))
            {
                result.IsNormal = false;
                return(result);
            }

            //获取区、县、镇
            var countyStr    = ConfigHelper.GetCounty();
            var fanyidicsstr = ConfigHelper.GetFanYiDics();
            var jsonHelper   = new JsonHelper();
            var fanyidics    = jsonHelper.JsonDeserialize <Dictionary <string, string> >(fanyidicsstr);

            if (fanyidics.ContainsKey(data))
            {
                result.PinYin = fanyidics[data];
                return(result);
            }

            var countyDics = jsonHelper.JsonDeserialize <Dictionary <string, string> >(countyStr);
            var last       = data.Last();
            var lastEn     = countyDics.FirstOrDefault(x => x.Value == last.ToString());

            if (lastEn.Key != (null))
            {
                data = data.Substring(0, data.Length - 1);
            }
            var pinyin = TranslateHelper.HanZi2PinYin(data);

            if (!string.IsNullOrEmpty(pinyin))
            {
                pinyin += lastEn.Key == (null) ? "" : string.Format(" {0}", lastEn.Key);
            }
            if (lastEn.Key == null)
            {
                result.IsNormal = false;
            }
            result.PinYin = pinyin;

            return(result);
        }