[问题] 加载txt档 中文字会有乱码

楼主: philip80220 (花)   2015-07-12 18:23:29
各位前辈们好
想请问说
# encoding: UTF-8
abc = Array.new()
abc[0] = "电脑"
File.open("database.txt", "a") {|file| file.write(abc[0])}
txt = File.open("database.txt")
puts txt.read()
当我执行这段程式码时,结果会跑出乱码
有什么方法可以解决吗?
谢谢大家
作者: AIGecko (师大猫耳控)   2015-07-12 20:11:00
puts txt.read.encode('utf-8')你要先确认档案database.txt的编码若要指定编码可以用 "a:utf-8" 这种用法来指定Windows应该是用BIG5 所以开档设成"a:big5"试试看
作者: mars90226 (火星人)   2015-07-12 22:52:00
应该是你把UTF-8编码字串append到了Big5编码档案去了你应该file.write(abc[0].encode('big5'),或是把档案整个改成UTF-8编码

Links booklink

Contact Us: admin [ a t ] ucptt.com