「é」が「\u00e9」になり、「Ř」が「\u0158」になるように、文字列の(ö、ä、üなど)のような非ASCII(ascii> 127)文字をエンコードするにはどうすればよいですか. 私がしたことは、文字を16進数に変換し、最初の2文字を\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()