• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:HTTP::Request::Common qw(POST);時にソフト表だとエラーになる)

HTTP::Request::Common qw(POST);でソフト表がエラーになる

このQ&Aのポイント
  • HTTP::Request::Common qw(POST);を使ってPOSTする際、日本語のデータは正常に渡るが、'ソフト表'という文字列を送るとエラーになる。
  • 記述はShift_JISで行っており、他の日本語文字列は問題なく送れることから、問題は文字列自体にある。
  • エラーの詳細や解決策について、先生方のご教授をお願いしたい。

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

  • ベストアンサー
回答No.1

Can't find string terminator '"' anywhere before EOF at perltest.txt line 2. のエラーでよろしいですか? これはHTTP::Requestとは全く関係のない問題です。'表'をShift_JISで表した時の2バイト目が¥のため、クォート記号をエスケープして打ち消してしまっています。そのため、ダブルクォートが閉じられていないというエラーが出ています。 bbb => "ソフト表¥" としてください。(¥は半角です)

taku0
質問者

補足

ご教授頂き有難うございます。 ¥で文字化けを防ぐ考えでよかったんですね。¥ソ¥表としていました^^; 後、この方法ですと、keyに対するvalue値を設定する都度、文字化けするかどうかを動作時にチェックし、エラーの際には同じ作業が必要になってくるかと思うのですが、組み込みモジュールやjcode.pl等を使って、簡単に防ぐ方法などはございませんでしょうか。

関連するQ&A