--- TermExtract/JapanesePlainText.pm.orig	2005-07-14 18:34:22.000000000 +0900
+++ TermExtract/JapanesePlainText.pm	2012-11-17 21:04:37.000000000 +0900
@@ -1,8 +1,9 @@
-package TermExtract::JapanesePlainTextEUC;
+package TermExtract::JapanesePlainText;
 use TermExtract::Calc_Imp;
 
 use strict;
 use Exporter ();
+use Encode 'from_to';
 use vars qw(@ISA $VERSION @EXPORT);
 
 @ISA = qw(TermExtract::Calc_Imp Exporter);
@@ -36,6 +37,8 @@
         $data = <IN>;
         close IN;
     }
+    # convert utf-8 to eucjp.
+    Encode::from_to($data, 'UTF-8', 'EUC-JP');
 
     foreach my $morph ((split /\n/, $data)) {
         chomp $morph;
@@ -43,6 +46,10 @@
         my $terms = get_katakana_kanji($morph);
         foreach my $cmp_noun (@$terms) {
             next if @$cmp_noun < 2;
+            # convert eucjp to utf-8.
+            foreach my $elem (@$cmp_noun) {
+                Encode::from_to($elem, 'EUC-JP', 'UTF-8');
+            }
             $cmp_noun_list{ join ' ', @$cmp_noun }++ if $$cmp_noun[0];
         }
     }
@@ -135,16 +142,16 @@
 
 =head1 NAME
 
-    TermExtract::JapanesePlainTextEUC
-     -- 専門用語自動抽出モジュール（和文「カタカナ・漢字抽出方式」EUC版）
+    TermExtract::JapanesePlainText
+     -- 専門用語自動抽出モジュール（和文「カタカナ・漢字抽出方式」UTF-8版）
 
 =head1 SYNOPSIS
 
-    use TermExtract::JapanesePlainTextEUC;
+    use TermExtract::JapanesePlainText;
 
 =head1 DESCRIPTION
 
-    日本語のテキストデータ（EUC)からそのまま専門用語を抽出するプログラム。
+    日本語のテキストデータ（UTF-8)からそのまま専門用語を抽出するプログラム。
 
     当モジュールの使用法については、親クラス（TermExtract::Calc_Imp)か、
   以下のサンプルスクリプトを参照のこと。
@@ -154,10 +161,10 @@
  #!/usr/local/bin/perl -w
  
  #
- #  ex_JPTE.pl
+ #  ex_JPT.pl
  #
  #  標準出力に専門用語とその重要度を返すプログラム
- #  和文「カタカナ・漢字抽出方式」EUC版
+ #  和文「カタカナ・漢字抽出方式」UTF-8版
  #
  #   version 0.05
  #
@@ -165,7 +172,7 @@
  
  use TermExtract::JapanesePlainTextEUC;
  #use strict;
- my $data = new TermExtract::JapanesePlainTextEUC;
+ my $data = new TermExtract::JapanesePlainText;
  my $InputFile = "JPTE_out.txt";    # 入力ファイル
  
  # プロセスの異常終了時処理
--- TermExtract/Chasen.pm.orig	2005-07-19 09:18:40.000000000 +0900
+++ TermExtract/Chasen.pm	2012-11-17 21:35:07.000000000 +0900
@@ -3,6 +3,7 @@
 
 use strict;
 use Exporter ();
+use Encode 'from_to';
 use vars qw(@ISA $VERSION @EXPORT);
 
 @ISA = qw(TermExtract::Calc_Imp Exporter);
@@ -48,6 +49,10 @@
                  $end =~ /^\s+$/ || $must) 
                 { pop @$terms }
         }
+        # convert eucjp to utf-8.
+        foreach my $elem (@$terms) {
+            Encode::from_to($elem, 'EUC-JP', 'UTF-8');
+        }
         $cmp_noun_list->{ join ' ', @$terms }++ if defined $terms->[0];
         @$terms  = ();
     };
@@ -59,6 +64,8 @@
         $data = <IN>;
         close IN;
     }
+    # convert utf-8 to eucjp.
+    Encode::from_to($data, 'UTF-8', 'EUC-JP');
 
     # 単名詞の連結処理
     foreach my $morph ((split "\n", $data)) {
--- TermExtract/MeCab.pm.orig	2005-07-14 18:35:06.000000000 +0900
+++ TermExtract/MeCab.pm	2012-11-17 21:34:49.000000000 +0900
@@ -3,6 +3,7 @@
 
 use strict;
 use Exporter ();
+use Encode 'from_to';
 use vars qw(@ISA $VERSION @EXPORT);
 
 @ISA = qw(TermExtract::Calc_Imp Exporter);
@@ -47,6 +48,10 @@
                  $end =~ /^\s+$/ || $must) 
                 { pop @$terms }
         }
+        # convert eucjp to utf-8.
+        foreach my $elem (@$terms) {
+            Encode::from_to($elem, 'EUC-JP', 'UTF-8');
+        }
         $cmp_noun_list->{ join ' ', @$terms }++ if defined $terms->[0];
         @$terms = ();
     };
@@ -58,6 +63,8 @@
         $data = <IN>;
         close IN;
     }
+    # convert utf-8 to eucjp.
+    Encode::from_to($data, 'UTF-8', 'EUC-JP');
 
     # 単名詞の連結処理
     foreach my $morph ((split "\n", $data)) {
--- SampleScripts/UNIX/ex_JPT.pl.orig	2005-07-14 18:31:14.000000000 +0900
+++ SampleScripts/UNIX/ex_JPT.pl	2012-11-17 20:59:57.000000000 +0900
@@ -1,19 +1,19 @@
 #!/usr/local/bin/perl -w
 
 #
-#  ex_JPTE.pl
+#  ex_JPT.pl
 #
 #  標準出力に専門用語とその重要度を返すプログラム
-#  和文「カタカナ・漢字抽出方式」EUC版
+#  和文「カタカナ・漢字抽出方式」UTF-8版
 #
 #   version 0.05
 #
 #
 
-use TermExtract::JapanesePlainTextEUC;
+use TermExtract::JapanesePlainText;
 #use strict;
-my $data = new TermExtract::JapanesePlainTextEUC;
-my $InputFile = "JPTE_out.txt";    # 入力ファイル
+my $data = new TermExtract::JapanesePlainText;
+my $InputFile = "JPT_out.txt";    # 入力ファイル
 
 # プロセスの異常終了時処理
 # (ロックディレクトリを使用した場合のみ）
