被编解码的问题搞的快崩溃了,求教以下问题

被编解码的问题搞的快崩溃了,求教以下问题

有以下问题很不明白:
open的问题:若只open和open(HANDLE "<:utf8")以及open(HANDLE,":encoding(utf8")有什么具体的区别呢?若文件本来就是utf8是不是这3个效果是一样的?若原文件是别的编码,这3个的区别在哪呢?

Encode的问题:是不是open(HANDLE,":encoding(utf8")就已经进行了encode/deconde的过程。那binmode (STDOUT, ":utf8");这种用法呢?什么意思?进行了编解码吗?

我现在对一个本来标示为utf-8的文件进行了处理,是不是什么编解码的过程都不需要加入?。。结果却出现了乱码,很郁闷啊。。。多了很多\xC2的东西。。。
多谢指教!
open(HANDLE,":encoding(utf8")表示文件读编码的方式,但是文件编码没有变化。
binmode (STDOUT, ":utf8");表示stdout的方式是utf8,但是输出的编码是没有变化的。


QUOTE:
原帖由 cnangel 于 2008-9-25 13:43 发表
open(HANDLE,":encoding(utf8")表示文件读编码的方式,但是文件编码没有变化。??
binmode (STDOUT, ":utf8");表示stdout的方式是utf8,但是输出的编码是没有变化的。

open(HANDLE,":encoding(utf8")表示文件读编码的方式,但是文件编码没有变化。??
没有变化?那和:utf8一样了?干吗encoding呢?