public void WriteMap(string fn, bool isSimp) { List <CharReading> fullList = new List <CharReading>(); CharReadings readings = isSimp ? charReadingsSimp : charReadingsTrad; foreach (var rdg in readings.ReadingsList) { fullList.Add(rdg); } Dictionary <string, List <string> > dict = isSimp ? polyDict.DictSimp : polyDict.DictTrad; foreach (var x in dict) { foreach (var hanzi in x.Value) { fullList.Add(new CharReading { Hanzi = hanzi, Pinyin = x.Key, }); } } using (StreamWriter sw = new StreamWriter(fn)) { sw.NewLine = "\r"; JsonSerializer serializer = new JsonSerializer(); serializer.Formatting = Formatting.Indented; serializer.Serialize(sw, fullList); } }
public Composer(string sourcesFolder) { readRanks(Path.Combine(sourcesFolder, "junda-freq.txt"), true); readRanks(Path.Combine(sourcesFolder, "tsai-freq.txt"), false); pinyin = new Pinyin(Path.Combine(sourcesFolder, "pinyin.txt")); charReadingsSimp = new CharReadings(Path.Combine(sourcesFolder, "Unihan_Readings.txt"), ranksSimp, pinyin); charReadingsTrad = new CharReadings(Path.Combine(sourcesFolder, "Unihan_Readings.txt"), ranksTrad, pinyin); polyDict = new PolyDict(Path.Combine(sourcesFolder, "cedict.u8"), pinyin); }