タグ

encodeとtextに関するpsychedesireのブックマーク (5)

  • UnicodeとUTF-8の違いは? - Humanity

    という2chのスレがかなり勉強になったのでまとめ。 少しでも有用だと思ったものは載せてあるので結構長いです。 Unicodeのような文字集合(符号化文字集合?)やUTF-8のようなエンコーディング方式に限らず色んな文字コードにまつわる話があります。 たびたび話が繰り替えされますがそれは確認ということで。 (元スレ) 追記:簡単にまとめました。 1 :デフォルトの名無しさん:2007/04/30(月) 20:02:37 ビッグインディアンとかなんとかかんとか 3 :デフォルトの名無しさん:2007/04/30(月) 20:05:48 また、頭の悪そうなスレが・・・ >>1 それは魚とマグロの違いを訊ねるようなもんだ。 4 :デフォルトの名無しさん:2007/04/30(月) 20:06:49 魚と鮪というよりは、魚と刺身の違いのような気がする。 5 :デフォルトの名無しさん:2007/04/

    UnicodeとUTF-8の違いは? - Humanity
    psychedesire
    psychedesire 2009/11/30
    おもすれーなこれは
  • JavaScript/備忘録/文字コード変換 - Felix-labo's Wiki

    文字コードの変換 † サーバーを、UTF-8で統一できたので、あまり問題のなさそうなところですが、京すごろく(kusano@kyosugoroku.com) は、SJIS で書いているのでこちらの変更でAJAXを使ってコールバックによる結果呼び出しを行った際に、きれーいに文字化けしました。 結果としては、すばらしい.js ファイルにめぐり合えて解決です。 まず、以下のリンクから、ecl.js.txt ファイルをダウンロードし、.txt 拡張子を取り去り、.jpファイルとしルートなどに設置します。 http://nurucom-archives.hp.infoseek.co.jp/digital/ecl.js.txt ご心配な方は、オリジナルページhttp://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.ht

  • UTF-8の冗長なエンコードとは何で、なんでそれがセキュリティ的に危ないのか?を文字コード知識レヴェル3くらいの凡プログラマが考えてみる - tohokuaikiのチラシの裏

    何故かあたり前にならない文字エンコーディングバリデーション | yohgaki's blog ってあるように、いまいち文字コードの不正な判定による危険性ってのが分かってない。 SJISの問題は、(2/3)SQLインジェクションを根絶!セキュア開発の極意 - 第5回■注目される文字コードのセキュリティ問題:ITproの記事がわかりやすかった。 というか、やっぱりPHP使ってると誰でも一度は「なんじゃこの『¥』は?」って思うもんなんで。 なるほど、確かに↓の図のように「あるバイト」が2つの意味を持つっていう文字コード形態はやばいんだなと。 EUC-JPはそんなことはしないで、1つのバイトには1つの意味しか取らせない。 だけど、これでも文字化けが起こることがある。経験的には、「マルチバイトをXX文字で切り落としたい」とかやった場合。ちゃんと文字コードを判定してくれるPHPでいえばmb_subst

    psychedesire
    psychedesire 2009/09/11
    『要するに、「3バイト食いますよ~」っていうフラグを立てておきながら(つまり1100000のバイトを送る)、2バイトしか送らなかった場合、次の文字も巻き込んでしまうんじゃないかってことかな?これって、EUC-JPやSJISで
  • s.decode('utf8') よりも unicode(s, 'utf-8') の方が速い - methaneのブログ

    http://groups.google.com/group/comp.lang.python/browse_thread/thread/314a3043ea63319f/ unicode vs s.decode unicodeはLOAD_GLOBALで、s.decodeはLOAD_ATTRでスタックに積まれる。で、LOAD_GLOBALの方が速い。 さらに言えば、何度もデコードを行うのであれば u = unicode のようにローカル変数にするとさらに速くなる。LOAD_ATTRやLOAD_GLOBALは最適化で消すことが出来ないので、明示的にローカル変数に束縛することはCPythonに限らず有効な手法だ。 'utf8' vs 'utf-8' 単なる1タイプの問題だけど、内部的には 'utf-8' が利用されており、 'utf8' を使うと 'utf-8' だと判断するのに1クッション必

    s.decode('utf8') よりも unicode(s, 'utf-8') の方が速い - methaneのブログ
  • 第7回 Unicodeからの多対一の変換[前編] | gihyo.jp

    文字コードが引き起こすセキュリティ上の問題として、もっとも興味深いもののひとつである、Unicodeから他の文字コードへの「多対一の変換」で引き起こされる問題点について、今回と次回で説明します。 ご存じのとおり、Unicodeには非常に多数の文字が収録されていますが(現在最新版のUnicode 5.1.0では100,713文字が収録されているそうです⁠)⁠、Unicodeから他の文字コードへの変換においては、互換性や可読性の維持のためか、複数のUnicodeの文字が他の文字コードでは単一の文字に変換されることがあります。 この「多対一」の変換が、開発者も想定していなかったような問題を引き起こす原因となることが多々あります。 具体的な例として、Windows上でのUnicodeからの変換について説明します。 Windows上でのUnicodeからShift_JISへの変換 Windows上で

    第7回 Unicodeからの多対一の変換[前編] | gihyo.jp
  • 1