|
本帖最后由 philostone 于 2012-3-1 17:51 编辑 ( N7 t& A- }% Q: j3 T
; |. W' @ X5 N0 ]2 `( U0 m2 M$ x2 D& [) o
9 L: t' t" q2 M2 f' _一、准备维基资源数据文件
( V3 R0 h% P2 {1 j5 }+ D1. 登陆维基资源数据网站http://dumps.wikimedia.org/backup-index.html;
8 x- X& ^7 V6 x% g- E2. 在该网页上查找想要的维基资源(可以用ctrl+f快捷方式),中文代码为zh,意大利文代码是it,zhwiki就是中文维基百科的数据,itwiki就是意大利文的维基百科数据;
1 F% } w- L' @5 F# j3. 在具体资源网页上下载文件结尾含pages-articles.xml.bz2的文件;
" l+ l' l0 ]7 W4. 下载后解压出文件结尾含pages-articles.xml的文件,把文件名中pages-articles.xml前的部分删掉。
) r! H ]5 ]6 }* n; h, Y9 y+ _! X: D! r6 H9 l5 z( z1 V e# L1 |
二、准备并使用xml转txt的工具,这种工具很多,操作最简单的主要有两种:
" t& O% b9 e, `- r, J& U1. WikiToMDict2.0.exe 下载地址http://115.com/file/dpdhh53x#
8 h7 |5 C/ m6 R& l在DOS下(CMD下)转到工具所在目录,(不管转何种语言的何种维基资源)键入wikitomdict2.0执行转换; o3 ^0 {+ j) C+ O, R/ A
2. Wiki2TXTv2.1.exe 下载地址http://115.com/file/e73kk63j#; @1 K6 p% K5 b
在DOS下(CMD下)转到工具所在目录,键入wiki2txtv2.1 it wp(注意it前后各有一个空格)。其中it 表示意大利语,如果你转的是中文资源需要用zh 代替it;wp表示百科,如果你转的是文库,则应键入ws。9 D0 W6 p7 \% v) D" h
3. 等待一定时间即可完成格式转换(转好的txt文件可以重命名)。, G0 M- g3 K* g3 Z/ N% {. e
4 p3 a% R5 T$ ^ X三、用Mdxbuilder转换TXT文件为MDX文件
) V+ A6 M; x$ d% `, e+ K: }1. 下载最新版的Mdxbuilder程序文件,, Y0 \; T4 [5 s, a- k
2. 在source栏浏览找到转好的txt文件,在Target栏键入想要转换成的mdx文件名(及其路径),style栏可以留空,data栏是在有图片、声音等其他附属文件时才用的,如果有这类文件,输入其所在地址和文件名,original format一般选 MDict(Html),encording一般默认选UTF-8(Unicode),但在法语等语种最好用UTF-16,当然相应的上面的txt也得先打开另存或用其他工具转为UTF-16编码;Title就随便写个标题了;Description主要是词典封面设计,可有可无,了解些html语言,如同设计网页一样可以把词典封面设计得很漂亮,比如你在data所指的文件夹中存了个名为X的图片,你就可以用<img src="/X">把图片弄到封面上……
3 }: U a# K" b这些完成后点start就开始转换了,依文件大小时间长短不等。
# \1 ]0 S9 u3 Q/ T8 h9 p, e$ Y- r, w6 }0 h C* F3 u8 o' @
四、可能遇到的问题
) O9 U+ Q0 F- i o# ^4 n1. 如果转换时出现词条名过长的错误,就得按Mdxbuilder提示的位置,打开txt文件查找修改。打开大txt文件推荐使用uedit32(请自己到软件网站或利用迅雷等下载工具下载新版本来使用)。打开文档后,首先ctrl+h切换成十六进制模式,再ctrl+g 输入Mdxbuilder提示的出错位置并查找,然后再ctrl+h切换成文本模式找到对应位置对词条标题进行修正。修正时,如果不好确定词条名,建议到http://www.wikipedia.org/,在相应语种维基资源下,粘贴入从该问题词条中复制的一段正文来找到词条标题。- k) a% R* W1 s5 g. Q
2. 下载解压后的XML文件过大,比如英、德、法等语种的维基资源,可以使用Split.exe这个程序(下载地址http://115.com/file/be6dijue#)来劈成多个部分来转为txt,再用TextForever.exe这个软件(下载地址http://115.com/file/dpdh0bl8#)来合并。- ]" D* ]# Y% L9 o
: x1 f% w7 ]6 c3 ^ W* F
9 ^7 `$ ?+ j6 w) H6 R
附:ISO 639-1语言及代码 : P* z( `' U. |" ~, X) K& x
|
|