如何在 UTF-16 中对字符串的非 ascii(ascii > 127)字符(ö、ä、ü 等)进行编码,使“é”变为“\u00e9”,“Ř”变为“\u0158” . 我所做的是将字符转换为十六进制并将前两个字符替换为 \u00 (用于 UTF-16)。但这不起作用……给我垃圾值。请帮助我正确的算法。
这是我写的,但它没有正确转换:
f = open ("input.txt","r")
data = f.read()
x=list(data)
i=0
for element in x:
if ord(element)>127:
y=hex(ord(x[i]))
y=y[2:]
y='\u00'+y
x[i]=y
i=i+1
data=''.join(x)
t= open("output.txt","w")
t.write(data)
f.close()
t.close()