![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_09.png?e8efa67)
Active PerlをWindows上で利用しています。
(This is perl, v5.8.7 built for MSWin32-x86-multi-thread)
今回、毎回UTF-16という文字コードで生成されるテキストデータを
Perlスクリプトで処理させたいのですが、sjis等への文字変換を
スクリプト内で行うにはどうすれば良いでしょうか。
use Encode; では、"utf8"はありますが、"utf16"というのはありません。
Perlスクリプトに食わせる前に、(テキストエディタなどで手動で文字エンコードさせるのではなく)
バッチ処理的に文字列変換できる方法でも構わないのですが、
何か良い方法がありましたら、お教えください。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
>今回、毎回UTF-16という文字コードで生成されるテキストデータを
きちんとBOMをつけて吐き出してもらわないと
どうにもならないので,BOMがついてるという前提で.
>use Encode; では、"utf8"はありますが、"utf16"というのはありません。
Encode::Unicode -- Various Unicode Transformation Formats
のマニュアルをご覧ください.
EncodeモジュールはPerlの全ソースコードの半分以上をを占める
巨大なものなので,UTF**系はもちろん
普通に使うものでUnicodeとの対応表があるものは
大抵ありそうです.
なお,nkfの新しいもの(v.2以降かな)ならUTF16LE,UTF16BEとかを
きちんと変換したくれたように記憶しています.
この回答への補足
返信が遅くなりました。
>>きちんとBOMをつけて吐き出してもらわないと
>>どうにもならないので,BOMがついてるという前提で.
もったいぶった書き方をしましたが、adduseres.exe とかいう
Windowsに添付のツールがありますが、これを /d:u オプション付きで
実行した結果、作成されるログ(テキスト)ファイルです。
>>Encode::Unicode -- Various Unicode Transformation Formats
>>のマニュアルをご覧ください.
マニュアルをネット検索して、読んでみました。
Encode::Unicodeのモジュールを別途追加(ppm)してやる必要があるということでしょうか。
(生半可知識で恐縮ですが)
>>なお,nkfの新しいもの(v.2以降かな)ならUTF16LE,UTF16BEとかを
>>きちんと変換したくれたように記憶しています.
結果的に他のツールですが、utf16→8へ変換してくれるフリーソフトが
ありましたので、それをワンクッション入れて、その後、Encodeで
UTF-8→Sjisへ変換するというベタな処理にして、現状はしのいでいます。
ノド元過ぎれば、これ以上手を打たないようになってしまいますが、
方法としては、ちょっとイマイチかなと感じております。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) awkのtoupper() 1 2022/10/21 20:39
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
- Perl perlでリテラル値はメモリにどのように格納されているか? 1 2023/01/15 20:45
- Excel(エクセル) 文字化け。メモ帳でUTF-8に変換後、エクセルへ貼り付けたいです。 3 2022/08/14 07:21
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- UNIX・Linux テキストファイルをページ番号付きでコマンドラインから印刷したい 1 2023/02/22 12:47
- その他(プログラミング・Web制作) awkの文字列比較はPOSIXロケールまたはCロケールにおいてバイナリ値の比較に使えるか gawkな 1 2023/04/22 09:21
- Windows 8 メモ帳による文字コード変換 2 2022/09/01 18:38
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- CGI 古ーくからフリーのtree.cgi掲示板を利用させてもらって来ましたが、最新でなにか復活できないか? 2 2023/04/07 10:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストファイルで提出とは?
-
ファイルをディレクトリ分配の...
-
openした後、closeしないでプロ...
-
perlのプログラミング 部分入れ...
-
Perlのエラーについてご教授く...
-
画像が表示でnull; this.src
-
perlプログラミング 空白行削除
-
Perlで特定文字列から特定文字...
-
ラズベリーパイ初心者です。 ラ...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perl で 64ビットint を扱うには?
-
perlのgrepで日本語の処理でエ...
-
UserGetAttributesの第7引数が...
-
HTMLのFORMで入力された文字を...
-
CGI.pm使用時の文字化けについて
-
perl 正規表現 抽出
-
シフトJISにおけるマッチング
-
全角空白での文字列分割について
-
perl 漢字コードの書き方,エン...
-
ActivePerl UTF-16の変換
-
漢字、カタカナ、ひらがな、英...
-
XPathでのワイルドカード指定
-
正規表現 \\s が、\\n に、ヒ...
-
(秀丸)正規表現で、CSV内金額へ...
-
例外処理のフローチャートの記...
-
Excel VBAでリンク切れをチェッ...
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
VBでグローバル変数を宣言するには
-
エクセルVBAでシートモジュール...
おすすめ情報