code/Athena0.0.1/common/Util/Str.cs
(开头部分) 9KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.VisualBasic;
using System.Text.RegularExpressions;
using Athena.common.Util.Extension;
using System.Web;
namespace Athena.common.Util
{
/// <summary>
/// 字符串操作 - 工具方法
/// </summary>
public sealed partial class Str
{
#region Empty(空字符串)
/// <summary>
/// 空字符串
/// </summary>
public static string Empty
{
get { return string.Empty; }
}
#endregion
#region PinYin(获取汉字的拼音简码)
/// <summary>
/// 获取汉字的拼音简码,即首字母缩写,范例:中国,返回zg
/// </summary>
/// <param name="chineseText">汉字文本,范例: 中国</param>
public static string PinYin(string chineseText)
{
if (string.IsNullOrWhiteSpace(chineseText))
return string.Empty;
var result = new StringBuilder();
foreach (char text in chineseText)
result.AppendFormat("{0}", ResolvePinYin(text));
return result.ToString().ToLower();
}
/// <summary>
/// 解析单个汉字的拼音简码
/// </summary>
/// <param name="text">单个汉字</param>
private static string ResolvePinYin(char text)
{
byte[] charBytes = Encoding.Default.GetBytes(text.ToString());
if (charBytes[0] <= 127)
return text.ToString();
var unicode = (ushort)(charBytes[0] * 256 + charBytes[1]);
string pinYin = ResolvePinYinByCode(unicode);
if (!string.IsNullOrWhiteSpace(pinYin))
return pinYin;
return ResolvePinYinByFile(text.ToString());
}
/// <summary>
后面还有 243 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
