
下記、PERLスクリプトを
Windows 7+ActivePerl + UTF-8記述状態
で使いたいのですが、どうやら、「爱」が正常に変換されず、?という文字が発生しファイルの作成ができないようです。
普通に、Windows 7上で、$titleの爱愛aiをコピーしてファイルの作成はできるので、Perl上でもこの動作を何とか実現させたいのですが、どのようにすればいいでしょうか?
---test.pl(utf8記述)---
use strict;
my $title = "爱愛ai"; # 念のためURLエンコードした物も書いておきます>%E7%88%B1%E6%84%9Bai
use Encode;
Encode::from_to($title, "utf8", "cp932");
open(F,">$title");
print F $title;
close(F);
open(F,">title_test.txt");
print F $title;
close(F);
-------------------------------
No.2ベストアンサー
- 回答日時:
素晴らしい回答ありがとうございます。
こんなモジュールがあったのですね!
同じ問題にぶち当たった人への参考
因みに、私自身は、他のサブルーチンでmoveを使う必要がありましたので、
こちらもとても役に立ちましたので、一応紹介しておきます。
ファイルのコピーや移動もこれでできるようです
http://search.cpan.org/~xaicron/Win32-Unicode-0. …
No.1
- 回答日時:
例えば
Encode::from_to($title, "utf8", "cp932");
を
Encode::from_to($title, "utf8", "cp932", Encode::FB_WARN);
としたらどうなりますか?
コメントありがとうございます。
下記コードで実行してみました。
-----------------------
use strict;
use warnings;
my $title = "爱愛ai";
use Encode;
# Encode::from_to($title, "utf8", "cp932");
Encode::from_to($title, "utf8", "cp932", Encode::FB_WARN);
open(F,">$title");
close(F);
open(F,">title_test.txt");
print F $title;
close(F);
-----------------------
まず、ファイルは作成されませんでした。
また、title_test.txtファイルについては、中身に何も書かれていませんでした。
また、use warnings;を追加して実行してみたところ(ない場合は、表示なし)
"\x{7231}" does not map to cp932 at C:/Perl64/lib/Encode.pm line 197.
というメッセージが表示されました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript 【jquery】EasyUIのSubGridにMySQLのテーブルデータを表示&編集にしたい 5 2022/05/02 13:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
does not map to shiftjis は解...
-
ファイル出力をUTF8Nではなくて...
-
perlをwindows環境でshift-jis...
-
perl5.8.3のunicode環境で日本...
-
Perl出力をUTF-8に指定する方法
-
大量メールの任意のヘッダだけ...
-
シェルスクリプトによる計算
-
文字化け
-
正規表現で " ← を削除する...
-
perlのDigest::MD5;でのMD5算出...
-
MATLAB グローバル変数の宣言
-
excel 2003から VBAのreplaceマ...
-
シェル(ksh)でテキスト文書を変換
-
携帯でのカウンタ
-
携帯のWEBサイトでファイル...
-
標準入出力 パイプ
-
極めて初歩的な質問ですみません
-
flockについて
-
ファイルのアップロード
-
パーミッションについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Perl cgiの文字化けを直したい ...
-
【エラー】Unrecognized character
-
Perl UTF8で出力
-
perlでuse utf8でsjisのファイ...
-
perlの自作ライブラリについて
-
Perl:Unicodeプロパティ作れない
-
perlのmysqlで文字化けをする、...
-
does not map to shiftjis は解...
-
sedの動作
-
Perlを用いて、XMLファイルの中...
-
消費税の計算で 税込価格から...
-
Perl utf8上でshiftjisをデコード
-
perlのLWP::Simpleでgrepの値が...
-
perlで新規ファイルを作成でき...
-
utf-8のCSVをshift_jisに変換し...
-
Perlでのファイル出力における...
-
HTTP::Request::Common qw(POST...
-
[Perl]Shift-JISのXMLを解析する場
-
[perl5.8] utf8で文字出力する...
-
ファイル出力をUTF8Nではなくて...
おすすめ情報