1. 程式人生 > 其它 >C# 漢字轉拼音(比原NPinyin好用)

C# 漢字轉拼音(比原NPinyin好用)

VS Nuget 上 搜尋 NPinyin, 會有好幾個選擇

經過測試

NPinyin 等都不好用, 好些漢字 無法轉拼音, 比如 "洺","玥" 等等,

 只有 NPinyinPro 可以!

 測試程式碼:

public void PingyinTest() {
    Dictionary<string, Tuple<string, string>> dict = new Dictionary<string, Tuple<string, string>>() {
    {"梅鈺", new Tuple<string,string
>("meiyu","MY")}, {"張洺", new Tuple<string,string>("zhangming","ZM")}, {"王玥", new Tuple<string,string>("wangyue","WY")}, {"王思琪", new Tuple<string,string>("wangsiqi","WSQ")}, {"董雲強", new Tuple<string,string>("dongyunqiang","DYQ")}, {"宋紅培", new Tuple<string
,string>("songhongpei","SHP")}, {"石磊", new Tuple<string,string>("shilei","SL")}, }; foreach (var keyval in dict) { var name = keyval.Key; var full = keyval.Value.Item1; var first = keyval.Value.Item2; var py = NPinyin.Pinyin.GetPinyin(name).Replace("
", ""); var pf = NPinyin.Pinyin.GetInitials(name); Console.WriteLine($"{name}\t {py} {(py == full ? "==" : "!=")} {full}\t {pf} {(pf == first ? "==" : "!=")} {first}"); } }