/*********************************************************************
* Author : Samson
* Date : 11/21/2014
* Test platform:
* 3.13.0-24-generic
* GNU bash, 4.3.11(1)-release
* *******************************************************************/
在GNULinux系统中,好多软件都是支持多种国家的语言的,而这种语言通常都是通过一个*.po的文件而区别开来不同的国家的语言的,有的可能会编译成二补码文件*.molinux反编译class文件linux反编译class文件,而编译成二补码文件的命令为msgfmt。
有的时侯存在这样的场景,为了更改语言翻译的问题,想直接更改语言文件,这么就要使用将编译好的二补码的*.mo文件转换成*.po文件,这么使用命令msgunfmt命令即可完成这个需求64位linuxLINUX 删除目录,以下的事例中test.po表示一个语言文件的ascii码的文件,test.mo表示编译后的二补码语言文件:
事例:
反编译mo二补码文件成asciipo文件
msgunfmttest.mo-otest.po
编码asciipo文件为二补码mo文件
msgfmt-otest.motest.po