• ベストアンサー

「エディタで保存するときに文字コードを指定する」??

タイトルの通りなのですが、エディタで保存するときに文字コードを指定する、という意味がよく分かりません。 例えば、私はTeraPadを使っているのですが、その場合、「文字コード指定再読み込み」というところで、SJISやEUCなどを指定するのですが、これは何をしているのか?そもそも分かりません。 質問自体がぼやけててすみません。それくらい全体的に分かっていないのだと思います。 よろしくお願いします。

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

  • ベストアンサー
  • s___o
  • ベストアンサー率35% (108/306)
回答No.2

コンピュータは文字をコード化(バイト表現)して認識します。 そのコード体系は、SJIS、EUC以外にもUnicode、UTFなど100種類以上あります。 コード体系が異なれば、バイト表現と文字との関係も異なりますので、文字がちゃんと表現されない場合、文字コードを変えて読み込むために「文字コード指定再読み込み」という機能があります。 試しに、「あいうえお」と入力したファイルをSJISやEUCで読み込んでみてください。 SJISでは、「あいうえお」 EUCでは、「ア楹ア「ア、アヲ」 Unicodeでは、「?????」 と表示されます。

その他の回答 (1)

  • deadline
  • ベストアンサー率63% (1239/1943)
回答No.1

Windows用のテキストエディタの多くは、プログラム内部での処理や編集画面への表示をShift-JISコードで行っています。 ファイルを保存する時に、特に指定しない場合、またはShift-JISを指定した場合には、そのまま、Shift-JISコードでファイルに書き込みますが、UNICODEを指定した場合には、プログラムの内部での処理に使用しているShift-JISコードをUNICODEに変換して保存し、(通常)ファイルの先頭にUNICODEを意味するBOM(Byte Order Mark)と呼ばれるものを書き込みます。 同様に、EUCを指定した場合には、Shift-JISコードをEUCコードに変換して書き込み、UTF-8を指定した場合には、Shift-JISコードをUTF-8コードに変換し、先頭にBOMを書き込みます。(それぞれ、読み込み時には逆の処理が行われて、画面上に正常な文字が表示されますが、保存時に指定した文字コードに対応していないエディタで開くと、文字化けしてしまいます。) 保存したファイルをバイナリファイルエディタで見ていただくとわかりますが、『エディタ』のカタカナ4文字+改行コードは、それぞれ、16進表記で、 Shift-JIS:83 47 83 66 83 42 83 5E 0D 0A UNICODE:FF FE A8 30 C7 30 A3 30 BF 30 0D 00 0A 00 UTF-8:EF BB BF E3 82 A8 E3 83 87 E3 82 A3 E3 82 BF 0D 0A EUC:A5 A8 A5 C7 A5 A3 A5 BF 0A のように、まったく異なる内容で保存されます。 こんな煩雑なことになっているのは、OSによって標準的に使用される文字コードが異なっているためで、インターネット上でもサイトによって使われている文字コードが異なるために、時に文字化けなんて事が起きたりするわけです。 詳しくは、下記の解説をお読みください。 『Wikipedia:文字コード』 http://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 『同上:Shift JIS』 http://ja.wikipedia.org/wiki/Shift_JIS 『同上:Unicode』 http://ja.wikipedia.org/wiki/Unicode 『同上:UTF-8』 http://ja.wikipedia.org/wiki/UTF-8 『同上:EUC-JP』 http://ja.wikipedia.org/wiki/EUC-JP 『XML用語事典:BOM』 http://www.atmarkit.co.jp/aig/01xml/bom.html

関連するQ&A

  • TeraPadの文字コード

    TeraPadの文字コードについて教えてください。 1. TeraPadで扱える文字コードは Shift-JIS、JIS、EUC、Unicode、UTF-8、UTF-8N の6種類あるようですが、このEUCとEUC-JPは 同じものですか? 2. Shift-JISで保存すると、TeraPadの下の部分に 表示される文字コードがSJISとなります。 これはShift-JISのことですか? 3. 短い文章では文字コードを誤認識する場合も あるようですが、どうしたら正しく認識 させられますか? 指定した文字コードで保存できず困っています。

  • EUCで保存できない

    テキストの内容を「11111」とか「adfas」など 単純な内容を書き、保存する際に文字コードを「EUC」 改行コードを「CR+LF」に設定し保存しても 再度開くときにShift-jisになってしまいます。 もちろんそこで再度SJISになったファイルを EUCで保存し再読み込み・文字コード指定保存をしても 画面上はEUCになりますが 保存し、ウインドウを閉じて再度開くとShift-jisになってしまいます。 現在使用しているテキストエディターは terapadです。emエディターでも同様です。 通常のフリーで落ちている EUCで書かれたファイルを ダウンロードして開いてみると EUCで書き変えることが可能です。 なぜか新規にEUCでファイルが作れなくなってしまいました。 どなたかお詳しい方のお返事をお待ちしています。

    • ベストアンサー
    • HTML
  • TeraPadで文字コードの指定保存ができなくなりました。

    はじめまして、cats4と申します。 TeraPadの「ファイル」からの文字コードの指定保存ができなくなりました。 「表示」→「オプション」の「文字コード」を触ってみましたがなおりませんでした。 とりあえずサクラエディターでしのいでいますが、一般的にTeraPadの方が評判がいいですので、できればTeraPadで作業したいです。 よろしくお願いいたします。

  • 文字コードの指定方法に関して

    エディターで、例えばHTMLファイルなどを作成するとき、 文字コードを指定する箇所が2箇所出てくるかと思います。 ----- (1)HTMLファイルのヘッダ内で指定する文字コード (2)ファイルを保存する時に指定する文字コード ----- 上記二つは、どのような違いがあるのでしょうか?? どのような使い分けの用途があるのでしょうか?? 以前に空メールの自動返信用テキストファイルを作成した時に、 テキストファイル内の文字コードはiso-2022-jpを指定して、 ファイル自体はEUCで保存するよう言われた事があるのですが、 なぜ違う形式を指定する必要があったのかな~と思いまして。。。 なんとなく、 (1)は閲覧するブラウザへ向けたもの、 (2)はそのファイルを設置するサーバへ向けたもの、 と考えているのですが、如何でしょうか。 宜しくお願いいたします。

  • terapadの文字コードについて

    terapadのVer.0.91を使っています。 前バージョンを使用していたときから気になっていたのですが 文字コードが勝手に変わってしまいます。 EUCやUTF-8で保存した文章が毎回ではないのですがShift-jisに 変わってしまいます。 web制作に使用しておりEUCで保存してた場合、日本語文章が全部 文字化けしてしまうので最悪です・・・ 表示→オプション→文字コードで再読込みは・・・にチェックを 入れても同じ結果でした。 terapadは扱いやすいのでできれば引き続き使いたいのですが これを直す方法はあるのでしょうか? その他、お勧めのフリーのテキストエディタがありましたら 紹介して頂けると幸いです。

  • javaのファイル読み込み時の文字コードについて

    当方プログラム初心者です。 文字コードがSJIS以外(EUCなど)のテキストファイルをBufferdInputStreamで読み込み、readline()したものをprintlnすると、この時点でファイル内の文字が文字化けします。 環境はEclipseで、実行時はUTF-8でエンコードされるようになっています。 ファイルはサクラエディタで作成し、保存時に文字コードをEUCやSJISに設定しています(デフォルトではSJISで保存される)。 ファイル内の文字列は「ABCDE123アイウエオ」が入っている前提です。 BufferedReaderにInputStreamReaderをラップし引数に読み込みたい文字コードを指定してもダメ、文字コードの引数にJISAutoDetectを指定してもダメ、Eclipseの実行構成をテキストファイルと同じ文字コードにしてもダメでした。 取り急ぎで本当にすみません。皆様の知恵をお貸しください。。。

    • ベストアンサー
    • Java
  • 文字化け(違う文字コードで保存すると不可逆?)

    テキスト・エディタでSJISのテキスト・ファイルをEUCとして開き(この時点で文字化けしてたのですが、それに気付かず)、誤ってそのまま保存してしまいました。 しかも大量のファイルを・・・。 日本語が文字化けしてしまったのですが、これを修復することはできるでしょうか? 一応、EUCのファイルをもう一度SJISで保存し直してみたり、エンコードを読み変えるソフトなどを試してみたのですが、結果はダメでした。 具体的には、以下の手順でやってしまいました。 1.秀丸でSJISファイル(PHPスクリプト)を開く 2.拡張子関連付け(PHPファイル=EUC)によって、開いた時はEUCモード(この時点で文字化け) 3.そのまま(EUCファイルとして)上書き保存 どなたか、修復の方法が分かる方、教えてください・・・・

  • apacheでPHPの文字コードの認識について。

    とんちんかんな事を聞いているのかもしれません。 人様の質問に回答した際、分からなくなったのですが・・・。 Apacheってどうやって、PHPの文字コードを判断しているのでしょうか? いろいろな文字コードがあると思いますが、PHPなら、まぁ、SJISとEUCでしょう。 そもそも文字コードは、コードを考えた人が、ここの位置にはこの文字を、っていうお約束ですよね。 とうぜん、コードによって違うので、コードを間違えると文字化けが起こります。 これはブラウザーでも、テキストエディターでも、文字化けが起こります。 ここまでは、知っている知識です。 oeditというエディタは、私が使った中で文字コードの間違いが少ないですが、書かれている内容が短いとコードの自動認識が、うまく働かず、コードを間違えて読むこともあります。(体験 ということは、画像のようにこれはJpegとかGifとか、テキストの見えない部分に書かれてないと言うことでしょうか?(推測 もしそうなら、ApacheはどうやってEUCか、SJISか、他のコードかを区別しているのでしょうか? ローマ字は平気だけど、日本語は文字化けますよね。 たとえば、EUCで書かれているけど、Apacheでご認識してしまって、スクリプトは問題ないのに、エラーが起きることがあるのでしょうか? そもそもApacheはどうやって、文字コードを認識しているのでしょうか?

  • テキストエディタの標準の文字コードについて

     EUC_JP で 例えば「あ」の一文字を保存したファイルを Windows 上で 秀丸などのテキストエディタで、 標準の文字コードを 自動選択にした場合に文字化け して画面に表示されますが、 標準の文字コードを EUC に設定して、開きなおすと 正しく表示されます。  ファイルを開くとき、エディタとOSは、どのような 処理をしているのでしょうか? 何かの パラメタ 付き API を発行して EUC での文字 コードに適したフォント、グリフが選択されて、画面 に表示されているのでしょうか? ( 実際の API 名があるのなら教えてください。 )

  • PHP、My SQLを使いますが、文字コードに悩まされています

    Perl使いでしたが、文字コードを強く意識することは ありませんでした。 PHP、MySQLを使いはじめたところ、両方とも文字コードが 大きく関係していることがわかりました。 現在はTerapadなるエディタを使わせてもらい文字コードを 指定し、保存したり、入力方法も変えないといけない? と問題は出てきます。 MySQLでも、UTF8やらEUCやら出てきて、SQLスクリプトを実行した ところ、エラーが出るなど、インポートでエラーが起きるなど もあります。 PHP使いの人は文字コードとどうやってつきあっているのですか? この入力はSHIFTJISでしょうが、入力方法変えないとPHP実行すると エラーが起きますね。でも、こちらでEUCで打ったら文字化けする。 日々文字コードと格闘しています。 どなたか文字コードとの付き合い方を具体的に教えてください。

    • ベストアンサー
    • PHP

専門家に質問してみよう