Perlでの文字コード変換

解決済みの質問

Perlでの文字コード変換

Windowsのフォルダに入っているファイル名をFedora Coreに入ってるpostgresのtableに入れたいのですが(perlで実行)文字の変換の仕方がわからず以下のメッセージが出て止まってしまいます。
DBD::PgPP::st execute failed: ERROR: invalid byte sequence for encoding "EUC_JP": 0x96d8

良い方法があれば教えてください。

****************************************
$query0 = 'insert into aaatbl (filename) values("$aaa");

$sth = $dbh->prepare("$query0");
$sth->execute;
$sth->finish;

($query0 が S-JISでaaatblはECU-JP)

投稿日時 - 2008-09-05 18:43:29

QNo.4306147

困ってます

質問者が選んだベストアンサー

デフォルトで入っているEncodeを使って以下のように変換してみては?

use Encode qw/ from_to /;
$query0 = 'insert into aaatbl (filename) values("$aaa");
&from_to($query0, 'shiftjis', 'euc-jp' );
$sth = $dbh->prepare("$query0");
$sth->execute;
$sth->finish;

投稿日時 - 2008-09-05 19:44:57

お礼

おかげで解決しました。
ありがとうございました。

投稿日時 - 2008-09-08 09:01:02

ANo.1

0人が「このQ&Aが役に立った」と投票しています

あわせてチェックしたい
  • perl >> DBI >> DBD >> oracle8でエラー ...
  • sth ...
  • sth ...
PR
【回答募集中】花粉にひと言、物申す![ 詳細 ]

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら