use Encode;$text = @ARGV[0];#here i read a string from command line$string = decode("gb2312",$text);#decode the input with gb2312, which is decided by my local setting@chars = split //,$string;open(OUTPUT,">>anUTF8File.txt");foreach $char (@chars){print OUTPUT encode("utf8",$char);#i encode it into utf8 here#and write it to the utf8 formatted file}close(OUTPUT);
############################when I input english string in the command, this works fine. then i changed my keyboard to German type and type some German characters for the ARGV[0], then what was written to the file were some strange characters like "?" or others.
In reply to Re^2: Encoding problem
by Anonymous Monk
in thread Encoding problem
by leeericsson
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |