一个俗人罢了K 发表于 2022-3-26 14:27 
中文乱码了 怎么都解决不好
cd "D:\stata15\ado\personal\mypaper" // 请自行修改路径
unicode encoding set gb18030
unicode translate *
//使用ua不成功时
cd "E:\"//自己修改路径
clear
local dta_file xx.dta //xx你可以自己改名就是文件夹中数据的名称
use `dta_file', clear
cap mkdir "backup files"
copy `dta_file' "backup files\", replace
local data_lbl: data label
local data_lbl = ustrfrom("`data_lbl'", "gb18030", 1)
label data "`data_lbl'"
foreach v of varlist _all {
local type: type `v'
if strpos("`type'", "str") {
replace `v' = ustrfrom(`v', "gb18030", 1)
}
local lbl: var label `v'
local lbl = ustrfrom("`lbl'", "gb18030", 1)
label var `v' `"`lbl'"'
local newname = ustrfrom(`"`v'"', "gb18030", 1)
qui rename `v' `newname'
}
qui label save using label.do, replace
preserve
qui import delimited using label.do,varnames(nonames) delimiters("asf:d5f14d5d",asstring) encoding(gb18030) clear
qui describe
if r(N) == 0 {
restore
save `dta_file', replace
}
else {
qui levelsof v1, local(v1_lev)
restore
foreach label_modify of local v1_lev {
`label_modify'
}
save `dta_file', replace
}
save "E:\xx.dta"//自己修改路径
erase label.do