今天一个朋友做了个Emacs的单词补全,特别好用,但是他自带的词库单词比较少,我就做了个单词提取工具,可以提取StarDict格式的辞典库。
StarDict的单词都存储在dictname.idx中,格式为:
每个单词后面跟着一个'/0'作为单词结束标志,再往后跟着8个字节用来描述单词在字典里的偏移和解释长度。
比如第一个单词a:
61 00 00 00 00 00 00 00 03 E4
我们需要的只是单词的字面值,后面的8个字节跳过就可以了。
代码如下:
今天一个朋友做了个Emacs的单词补全,特别好用,但是他自带的词库单词比较少,我就做了个单词提取工具,可以提取StarDict格式的辞典库。
StarDict的单词都存储在dictname.idx中,格式为:
每个单词后面跟着一个'/0'作为单词结束标志,再往后跟着8个字节用来描述单词在字典里的偏移和解释长度。
比如第一个单词a:
61 00 00 00 00 00 00 00 03 E4
我们需要的只是单词的字面值,后面的8个字节跳过就可以了。
代码如下: