cd //看当前stata的默认工作路径,然后将需要消除乱码的do或者dta文件拷贝到工作路径下
//然后运行如下三个命令即可:*代表工作路径下的所有文件,如果只针对指定文件,那么
//将*替代为具体文件名即可
unicode encoding set gb18030
unicode analyze *
unicode translate *
unicode translate "0001.txt"
//假如我们又用stata13写了一个do文件,内容和刚才的一样,并且覆盖了刚才转码后
//保存的do文件。然后我们用Stata14打开这个do文件,发现又出现了乱码,但是此时不管
//我们是对这个文件进行分析,还是进行转码,都会提醒我们这个文件已经进行过转码了
//这主要是在之前的转码中生成了一个名为“bak.stunicode”的文件夹,
//里面保存了文件在转码前的备份,这就造成了这个路径下以这个名称命名的文件不能够再
//进行转码。如果我们需要对这个覆盖过后的文件进行转码,需要先把这个文件夹删除,
//我们可以直接右击这个文件夹选删除,也可以用unicode erasebackups这个命令,由于
//Stata的开发者认为删除掉这个备份是一个糟糕的做法,因此这个命令需要加上一个
//badidea选项
unicode erasebackups,badidea
//在默认状态下有些行无法进行转码。对于一些较为复杂或生僻的字
//,在默认的状态下转码后依然是乱码,我们可以使用transutf8这个选项解决这个问题。
//但是Stata的help文件中提示我们,除非我们在转码时Stata提示我们定义这个选项,
//否则我们就不要用。
unicode translate *,transutf8


雷达卡




京公网安备 11010802022788号







