1. A method of creating Chinese language data, comprising: generating identifiers for a plurality of Chinese Pinyin syllables; storing the identifier and an array index for each of the plurality of Chinese Pinyin syllables in an array of identifiers; generating a plurality of Hanzi character candidate lists, each of the plurality of Hanzi character candidate lists comprising a plurality of Hanzi character candidates that are associated with one of the plurality of Chinese Pinyin syllables, and each Hanzi character candidate having a candidate index in the Hanzi character candidate list; and generating and storing in a computer-readable memory data records for a plurality of words having multiple Pinyin syllables, the data records for each of the plurality of words comprising a key and a value, wherein each key comprises the array index and tone information for each of the multiple Pinyin syllables in one of the plurality of words, and each value comprises a candidate index to identify a Hanzi character candidate for each of the multiple Pinyin syllables in one of the plurality of words.