文字コードについての主流はUTF-8?

このQ&Aのポイント
  • 文字コードについては、UTF-8が主流になりつつあると言われています。
  • UTF-8は、UnicodeとASCIIコードを混在させるための規格であり、WindowsやMacなどが方向転換する可能性があります。
  • しかし、既存のサイトが文字化けせずに表示されるかは、メタタグの設定によると考えられます。
回答を見る
  • ベストアンサー

文字コードってUTF-8が主流に?

文字コードについては、UTF-8が主流になりつつあるってネットで観ました。 文字コードを検索すると次のような説明があります。 (UTF-8のエンコード) UTF-8は、UnicodeとASCIIコードを混在させるための規格です。 (シフトJISコード) シフトJISコードは、SJISとも呼び、Microsoft社が決めたコードでWindows95やMS-DOSやMacなどで使用されています。 その上で質問です。 1、 UTF-8が主流になるってことは、Windows、MacがUTF-8に方向転換するってことでしょうか? 2、 仮にUTF-8が主流になっても、サイトに <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> と記述していれば文字化けなく表示されるのでしょうか? 今の時点では判断できない質問なのでしょうか・・

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

  • ベストアンサー
  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.4

>私が掲載している・・Macなどで使用されています・・というのは嘘ですか? 嘘ではありません。使用することもできます。ただ、主流ではないです。 MacではUTF-8もShiftJISも両方使うことができます。 >HTMLで使用している文字コードで、シフトJISと、UTF-8で違っているコードってありますかねぇ。 どういう文字コードで保存したかによります。保存したコードと違うコードを(間違って)charsetで指定した場合は当然文字化けします。 コードにより機種依存文字がありますので、特定の文字コードに依存した文字はあります。例えば丸付き数字はそうですね。 >この文字コードっていうのは、PCで決まっているもんですよね >主流がUTF-8となっても、PCを買い換えなければUTF-8を使用できないってことですよね? 違います。OSにより、主流となる文字コードが異なるだけです(インストール時に文字コードを指定するようなOSもありますけど)。今時のコンピュータでは一つのOSの中で複数の文字コードを扱う事ができます。ですから、MacでWindows用のHTMLを記述することもできますし、WindowsでMac用に記述されたUTF-8のHTMLを表示することもできます。

gfkdfs
質問者

お礼

要するに、文字コードはWEBを作製する際のCSS、CGI、HTML、等々の文字認識の問題でありWEBサイトを観るには問題ないってことですか? だからスマホであってもShift_JISで記述したサイトが問題なく観れるってことですね。

その他の回答 (6)

  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.7

>UTF-8が主流になってShift_JISがなくなるってことはないですかね? これだけWindowsPCが普及している現在では、早急にShiftJISがなくなることはほぼありえないです。 過去のデータの蓄積もありますし、これらを一気に変更する事は現実的ではないですからね。

gfkdfs
質問者

お礼

ですよね。

  • usatan2
  • ベストアンサー率37% (163/436)
回答No.6

回答とお礼を拝見したところ、 質問者さんは、内部コードと外部コードを混同されているように思いました。 両者の違いを頭にいれると、問題が整理される気がしました。 以下、 http://www.asahi-net.or.jp/~ax2s-kmtn/character/japan.html より抜粋 ----------------- 内部コードと外部コード 各コンピュータ内のOSやプログラミング言語に用いる情報処理用の文字コードと、コンピュータ間の情報交換に用いる文字コードは同じとは限りません。前者は内部コードと呼ばれ、情報交換しても混乱が生じないという整合性が求められます。後者は外部コードと呼ばれ、効率や処理容易性が求められます。

参考URL:
http://www.asahi-net.or.jp/~ax2s-kmtn/character/japan.html
gfkdfs
質問者

お礼

なるほど。文字コードについてはベストアンサーです。 だからアイ・ホンできたメールは文字化けしていて、エンコードをUTF-8にするとみえるわけですね。 ただ、相談2番に関係することですが、もしユーザーさんのpcにUTF-8や、Shift_JISの選択が無ければ文字化けが解消されないということですね。 UTF-8が主流になってShift_JISがなくなるってことはないですかね?非現実的な話ですか・・

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.5

> シフトJISコードは、SJISとも呼び、Microsoft社が決めたコードでWindows95やMS-DOSやMacなどで使用されています。 情報が古い、あるいは、不正確です。 昔のMacでは、日本語OSで使われていたのはShift_JISでした。 最近のMac(と言っても、OSX10.0のリリースが2001年ですから12年前以上前から)ではUnicodeになっています。 # 余談ですが、「Macの改行コードはCR」というのも、昔の話で、OSXではUNIXと同じLFになってます。(というより、OSX自体がUNIXなので当然UNIX流になっただけですが) また、OS標準の文字コードと、ブラウザやテキストエディタ等のアプリケーションで使える文字コードとは無関係です。 上記のような古いOSでも、Unicodeに対応したアプリケーションはありました。

gfkdfs
質問者

お礼

要するに、文字コードはWEBを作製する際のCSS、CGI、HTML、等々の文字認識の問題でありWEBサイトを観るに問題ないってことですか? だからスマホであってもShift_JISで記述したサイトが問題なく観れるってことですね。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

>を記述するとスマホでは文字化けするってことですか?  どうしてそういう発想になるかわかりません。  コンピューターが内部的にどのような文字コードを使っていようが、それとは関係ないです。私は、ウェブでは、EUC-JP,iso-2022-jp,Shift_JIS,UTF-8を使い分けますが、どのOS、ブラウザでも利用できますよ。  普段使っているパソコンは、Windowsですが、EUC-JP,iso-2022-jp,Shift_JIS,UTF-8・・を含め、どの文字コードでもテキストをかけます。  この掲示板はUTF-8のようですが、お使いのパソコンがWindows98でも、全く問題なく使えるはずです。 ※文字コードは、どの方式で符号化するかを決めているだけです。  それを処理するOSやアプリケーションが使用している符号化とは関係ありません。

gfkdfs
質問者

お礼

「どうしてそういう発想になるかわかりません。」 いや、スマホなんかはUTF-8のみの対応で<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">なんて記述しても認識しなくて文字化けするのかなぁーって思ったんですよ。 「※文字コードは、どの方式で符号化するかを決めているだけです。  それを処理するOSやアプリケーションが使用している符号化とは関係ありません。」 ってことは文字コードを気にしなくてもいいってことですかね? ちょっと混乱してきました。 でも<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">は大事な記述ですよね・・

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

>UTF-8は、UnicodeとASCIIコードを混在させるための規格です。  の表現は正しくないです。  UTFは、"UCS Transformation Format 8"もしくは"Unicode Transformation Format-8"の略ですが、多言語の文字をひとつのコードで表すための規格の一つです。  1バイトの部分をASCII文字に割り当て、2-8バイト部分を他の文字に割り当てているということで、混在させるためではありません。他のUTF(UTF-16,UTF-32など)と異なり、ASCII文字を多く含むデータではデータ量がほとんど変わらない利点があります。 >UTF-8が主流になるってことは、Windows、MacがUTF-8に方向転換するってことでしょうか?  Windowsの内部で使われているのはUTF-16ではなかったかと・・ ><META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">  あくまでどの符号化を使うかだけの問題です。  今後も、メールではiso-2022-jpが主流でしょうし、EUC-JPも使われ続けるでしょう。 >文字化け  これは、そのフォントを持っているかそうでないかと、符号化の解釈を間違う場合との二つを分けて考えること。  指定されてフォントがなければ、文字化けしますし、解釈を間違えば文字化けします。  Webでは、UTF-8が主力になるでしょう。それは、HTML5の標準文字コードがUTF-8だからです。新しいページはUTF-8が増えていくでしょうが、それによって古いものが読めなくなるということはありません。  ⇒文字コード - Wikipedia( http://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 )  

gfkdfs
質問者

お礼

<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> を記述するとスマホでは文字化けするってことですか? シフトJISをスマホが所有していれば文字化けしないってことですかね

  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.1

1. Macは元からUTF-8がメインです。その他も表示できますけど。 Windows系は、XP以降では内部的にUnicode(UTF-16)が使われています。UTF-8もなんの問題もなく表示できますが、標準アプリのメモ帳等では文字化けする可能性もあります。 2. そのHTMLで使用している文字コードを正しく指定していればOKです。PHP等を使われている場合も同様です。 「UTF-8」が主流になりつつあるというのは、あくまでもWeb系での話です。 タブレットやスマホ(特にiPhoneやiPad)の場合、UTF-8の方が都合がよいので。

gfkdfs
質問者

お礼

有り難うございます。 尚、今回の相談はWEBを目的としたものです。 「Macは元からUTF-8がメインです」 私が掲載している・・Macなどで使用されています・・というのは嘘ですか? 「HTMLで使用している文字コードを正しく指定していれば・・」 HTMLで使用している文字コードで、シフトJISと、UTF-8で違っているコードってありますかねぇ。 この文字コードっていうのは、PCで決まっているもんですよね 主流がUTF-8となっても、PCを買い換えなければUTF-8を使用できないってことですよね?

関連するQ&A

  • 文字コードsjisをUTF8に書き換えたい

    CGIの勉強中の者です。 文字コードはSJISで保存しているCGIをUTF8コードに換えるには何が必要でしょうか? HTMLならmeta内をSJISからUTF8に変更し、TeraPadなどのテキストエディタでUTF8に保存すればオッケーなんですが。 CGIの場合はHTMLと違って、換えるには複雑なのでしょうか? CGIプログラムの中では以下の「sjis」を「UTF8」に書き換えし、UTF8で保存しましたけど、文字化けが出てます。 <meta http-equiv="Content-Type" content="text/html;charset=shift_jis"> &jcode'h2z_sjis(*contenido) &jcode'convert(*subject,'sjis'); &jcode'convert(*infor,'sjis'); &jcode'convert(*contenido,'jis'); &jcode'convert(*res_msg,'jis'); print "Content-type: text/html;charset=shift_jis\n\n"; 宜しくお願いします。

    • 締切済み
    • CGI
  • xml宣言の文字コード変更

    xhtmlとcssでのコーディングを行った際、途中で「UTF-8」で作成してと言われました。 そのため、作成していたコードの冒頭をshift_jisからUTF-8にかきかえてみたところ、文字化け。ブラウザの表示をUTF-8に変えても化けたままなので、作業にならんと宣言をshift_jisに戻しました。 が、書き換えても文字化けが直りません。 宣言自体を消して保存しなおしたりもしたのですが、以前文字化けたままです。 テキストエディタで見るとちゃんとshift_jisになっているのですが、 これはどうすれば直るものなのでしょうか? 手を入れたのは以下の二行になります。(抜き出してるだけですので実際はheadタグ等を挟んでいます) 初期 <?xml version="1.0" encoding="shift_jis"?> <meta http-equiv="content-type" content="text/html; charset=shift_jis" /> ↓ UTF-8に書き換え <?xml version="1.0" encoding="UTF-8"?> <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> ご教授ねがいます。

  • Dreamweaverで「shift_jis」→「utf-8」

    DreamweaverMX2004を使用しています。 以前に文字コードをshift_jisで作ったhtmlを全てutf-8に変更したいと思っています。 これを行う場合、Dreamweaverのコードビュー画面で <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> ↓ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> と直接手で書き換えるだけで、文字コードはDreamweaverが自動的に保存しなおしてくれるのでしょうか? (もしくはメニューの「ページプロパティ」でエンコーディングを変更できるようですが、どちらの方法にしても) また、これをDreamweaverではなく、テキストエディタ(TeraPad等)で行う場合、どのような方法になりますでしょうか。 また、UTF-8でhtmlを作成する際、shift_jisとは別の点で何か注意しなければならないことはありますか? よろしくお願い致します。

  • 文字コード

    HPを作る際は <meta http-equiv="content-type" content="text/html;charset=shift_jis"> と <meta http-equiv="content-type" content="text/html;charset=utf-8"> のどちらにすればいいのでしょうか?

    • ベストアンサー
    • HTML
  • POSTしたデータの文字コードがutf-8になる

    ヘッダーで文字コードをSJISになるように <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /> と設定し、ボディ側のformで <form method="post" action="xxxxx"> <input type="text" name="n" value=""> <INPUT type="submit" value="実行"><br /> </form> とすると、サーバ側で受け取ったname="n"がutf-8になっています。 PHPですが、受け取った文字を echo mb_convert_encoding($_POST["n"],"SJIS","utf-8"): とSJISに変換し、表示すると、文字化けなく表示可能なのですが、そのままでは文字化けてしまいます。(表示側のHTMLも文字コードは上記と同様にヘッダーで文字コードを指定しSJISにしています。) 何が悪いのでしょうか?(特殊な環境としてはchrome+jquery mobileを使用しています。) よろしくお願いします。

    • ベストアンサー
    • HTML
  • 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. 短い文章では文字コードを誤認識する場合も あるようですが、どうしたら正しく認識 させられますか? 指定した文字コードで保存できず困っています。

  • 特定ファイルのみ文字コード変換

    現在PHP5を文字コードUTF-8で使っているのですが あるphpファイルのみSJISで出力したくて色々調べphp.iniを設定したのですが、どんなに強引(無謀)な方法を使ってもブラウザで表示すると文字コードがUTF-8で認識されてしまいます。 (mbstring.detect_order default_charset mbstring.http_output などを色々変更して試しました。) <meta http-equiv="Content-Type" content="text/html; charset=Shift-JIS" />も記述しています。 SJISで出力させたいファイルの保存文字コードはSJISです。 .htaccess でのフォルダ単位の指定も試したのですがダメでした。 phpファイル内に下記を記述してもダメでした。 header('content-type:text/html; charset=Shift_JIS'); 試しに $test $test2 = mb_convert_encoding($test ,'Shift_JIS' ,'UTF-8'); なども試してみたのですが、何をやってもブラウザはUTF-8と認識してしまうため文字化けしてしまいます。 apacheの設定で AddDefaultCharset は設定していません。 php.iniの設定は素人なりにですがやりつくしたと思うのですが・・・httpd.conf なのかと思って調べても見たのですがUTF-8の記述すらありませんでした。 ちなみに普通のhtmファイルの場合はmetaタグの文字コードをSJIS指定しただけで正しくSJISで表示されます。 ・・・というような状態なのですが、ブラウザにUTF-8と強制的に認識させてしまう設定はどこでされてしまっているのでしょうか? ・・・やはりphp.iniなのでしょうか? 宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • 携帯サイトで文字コード指定のメタタグは必要?

    phpで携帯サイトを作っています。 ソースコードをutf-8で作成して、表示する際にShift_JISに変換して出力しています。 ソースコード中の<head>の中には、 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" /> というタグを記述しています。 この、ソースコードをDreamweaverで編集したいのですが、Shift_JISで開こうとしてしまい、 文字化けしてしまいます。 コメントで先頭に以下のように記述すると、utf-8で開く、というtipsのようなものを 見つけたので、その通りにしたところ、開くときはOKです。 <?php //<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ?> ですが、保存すると、 Shift_JISで保存してしまいます。 多分、 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" /> というほうを認識してしまっているんだと思うのですが、そこで質問です。 携帯端末では、この指定は必須のものでしょうか? PHPからは、HTTPヘッダで文字コードも指定しているので、いらない筈だと思うのですが、 携帯ブラウザの中には、メタタグが必須のものもあるのかどうかが知りたいです。 また、Dreamweaverで、utf-8を指定して保存する方法があれば、そちらでもかまいません。 Dreamweaver は cs3(windows) を使っています。 どうぞよろしくお願い致します。

    • ベストアンサー
    • PHP
  • 文字コード(UTF-8)文字化けについて

    以下のphpを実行したところ、入力した文字によって文字化けしたりしなかったりします。 どなたか原因が分かる方がいらっしゃったら教えてください。 (見、一は化けない。上、実は化ける。) phpはバージョン5.2.8を使用しています。 (コード)----------------------- <html lang="ja"> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <head> </head> </body> <?php mb_language("Japanese"); mb_internal_encoding("UTF-8"); $org_text1 = "見"; $org_text2 = "上"; $org_text3 = "実"; $org_text4 = "一"; $telop_text1 = mb_convert_encoding($org_text1,'utf-8','ASCII, JIS, EUC-JP,SJIS'); $telop_text2 = mb_convert_encoding($org_text2,'utf-8','ASCII, JIS, EUC-JP,SJIS'); $telop_text3 = mb_convert_encoding($org_text3,'utf-8','ASCII, JIS, EUC-JP,SJIS'); $telop_text4 = mb_convert_encoding($org_text4,'utf-8','ASCII, JIS, EUC-JP,SJIS'); echo "telop_text1="; echo $telop_text1; echo "<br>"; echo "telop_text2="; echo $telop_text2; echo "<br>"; echo "telop_text3="; echo $telop_text3; echo "<br>"; echo "telop_text4="; echo $telop_text4; ?> </body> </html> (結果)------------------------- telop_text1=見 telop_text2= telop_text3=タ telop_text4=一

    • ベストアンサー
    • PHP
  • 文字コード変更による、文字化け・レイアウト崩れ

    文字コードをShift-jisからEUC-JPに変更したいのですが、 HTML・CSSに処理を施したら文字・レイアウトが大幅に崩れてしまいました。 以下のように変更したのですがやり方に間違いはないでしょうか? [HTML] <meta http-equiv="Content-Type" content="text/html; charset=Shift-jis"> ↓↓ <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> [CSS] @charset "shift_jis"; ↓↓ @charset "euc-jp"; また、ブラウザの表示⇒エンコードで(Shift_jis)を選択すると今までどおり正常に表示されます。(HTMLとCSSにはeuc-jpの記述にも関わらずです) これは文字コード変更したと思い込んでしまっているのでしょうか? 解決策お願いします。 あまり知識がありませんので、分かり易く教えていただけるとありがたいです。 ちなみにエディタはHTML Project2を使用しています。