タグ

文字コードに関するteracy_junkのブックマーク (24)

  • Unicodeを使用した多言語データベースのサポート

    6 Unicodeを使用した多言語データベースのサポート この章では、Oracleデータベース環境でのUnicodeの使用方法について説明します。この章の内容は、次のとおりです。 Unicodeの概要 Unicodeの内容 Unicodeソリューションのデータベースへの実装 Unicodeの事例 複数言語サポートのためのデータベース・スキーマ設計 Unicodeの概要 Unicodeは、世界中で話されているほとんどの言語のあらゆる文字を定義する文字コード・システムです。 既存の文字エンコーディングの制約を克服するために、1980年代の後半、複数の組織がグローバル・キャラクタ・セットの作成に着手しました。グローバル・キャラクタ・セットの必要性は、1990年代中頃に入り、World Wide Webの発展とともにますます大きくなりました。インターネットの普及によってビジネスの形態が変化し、グロ

  • Oracle DatabaseでのUnicode設計 - Qiita

    Oracleの場合、それぞれの型に別ののCharsetを指定することが可能です。ふつうにOracleをインストールすると、 NLS_CHARSET=AL32UTF8 NLS_NCHAR_CHARSET=AL16UTF16 になるかと思います。当然ながらNLS_NCHAR_CHARSETには、Unicode系のCharsetしか設定できません。(実際にはNLS_NCHAR_CHARSETに、AL16UTF16以外をセットしたことがないので、それ以外のときにどういう挙動になるか分かってません。) 実際にどの型でどのCharsetを使うかは、以下のSQLで見ることができます。(要sysオブジェクトへの参照権限) SELECT distinct(nls_charset_name(charsetid)) CHARACTERSET, decode(type#,1,decode(charsetform,

    Oracle DatabaseでのUnicode設計 - Qiita
  • .NET Core で Shift-JIS を扱う - present

    例えば .NET Core でテキストファイルを出力するとき、文字コードに Shift-JIS を指定するには System.Text.Encoding.CodePages が必要だった。 www.nuget.org using System; using System.IO; using System.Text; namespace EncodingSample { class Program { static void Main(string[] args) { // エンコードプロバイダーの登録が必要 Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); var path = Path.Combine(".", "result.txt"); using (var stream = File.OpenWrite(p

    .NET Core で Shift-JIS を扱う - present
  • UTF-8からSJISに文字化けすると糸偏の漢字がよく出てくる - Qiita

    はじめに Twitterで、文字化けネタを幾つかつぶやきました。 サッちゃんはね サチコっていうんだ ほんとはね だけど ちっちゃいから 自分のこと SJISで 保存するんだよ おかしいな 繧オ繝ちゃん — ロボ太 (@kaityo256) 2017年10月10日 「私 魔女のキキです。こっちはSJISの繧ク繧ク」 — ロボ太 (@kaityo256) 2018年1月6日 UTF-8「もしかして…」 SJIS「私達…」 「「入れ替わ縺縺ヲ繧九≦縲懶シ†」」 — ロボ太 (@kaityo256) 2018年2月13日 どれもUTF-8で保存された文字をSJISとして解釈したための文字化けを表現したものですが、パッと見で「糸偏の漢字が多いな」ということがわかるかと思います。なぜそうなるかを簡単に説明してみようと思います。 なお、文字コードはいろいろ面倒なので、ここではざっくりとしたことしか言い

    UTF-8からSJISに文字化けすると糸偏の漢字がよく出てくる - Qiita
    teracy_junk
    teracy_junk 2018/02/16
    『UTF-8のひらがな、カタカナ3バイトの上位2バイトをSJISで解釈した時、1バイト目はE3で確定、2バイト目の上位4bitは8で確定、残りの下位4bitとしてとり得るのは「1」「2」「3」の三種類』頻出の理由なるほど
  • プログラミング言語における文字コードの話

    世の中がほぼUnicode前提になってめでたしめでたし。とはいかなかった現実の話。 String型でできる文字列処理とか、ソースコード自体、特に識別子で使える文字とか。 軽くおさらい: Unicode まあいろんなところでいろんな人が書いてると思うのでさらっと概要だけ。 Unicodeは、元々、「65,536文字あれば十分だろ」とかいう幻想の元、2バイト固定長の文字コードとして作られていました。 もちろん足りなくて、ビット数を拡張。基が2バイトのままでこの拡張した分を取り扱えるようにしたのが今のUTF-16で、拡張分は2文字分(4バイト)を使って表現。 この、2文字分使って1文字を表すやつのことをサロゲートペア(surrogate pair: 代理対)と呼びます。 あと、ASCII文字も2バイトになるのを欧米人が嫌って、ASCII文字はASCIIコードのまま、逆に漢字・ひらがな・カタカナ

    プログラミング言語における文字コードの話
    teracy_junk
    teracy_junk 2017/05/23
    面白い(実務だと胃が痛い)話
  • JavaScript における文字コードと「文字数」の数え方 | blog.jxck.io

    Intro textarea などに入力された文字数を、 JS で数えたい場合がある。 ここで .length を数えるだけではダメな理由は、文字コードや JS の内部表現の話を理解する必要がある。 多言語や絵文字対応なども踏まえた上で、どう処理するべきなのか。 それ自体は枯れた話題ではあるが、近年 ECMAScript に追加された機能などを交えて解説する。 なお、文字コードの仕組みを詳解すること自体が目的では無いため、 BOM, UCS-2, Endian, 歴史的経緯など、この手の話題につき物な話の一部は省くこととする。 1 文字とは何か Unicode は全ての文字に ID を振ることを目的としている。 例えば 😭 (loudly crying face) なら 0x1F62D だ。 1 つの文字に 1 つの ID が割り当てられているのだから、文字の数を数える場合は、この ID

    JavaScript における文字コードと「文字数」の数え方 | blog.jxck.io
    teracy_junk
    teracy_junk 2017/03/03
    「おまけ」が本番だった/👨‍👩‍👧‍👦というemojiの闇みたいな文字ほんとすごい…
  • Pythonでmd5やsha256などのハッシュ値を求める - Yura YuLife

    Pythonで引数に入力された文字列のハッシュ値を求めるスクリプトを作成してみました。 hash.py #!/usr/bin/python # -*- coding: utf-8 -*- import hashlib def calc_hash(string): u'''入力文字列のハッシュ値を求めて辞書型で出力する''' hash_dict = { 'md5': hashlib.md5(string).hexdigest(), 'sha1': hashlib.sha1(string).hexdigest(), 'sha224': hashlib.sha224(string).hexdigest(), 'sha256': hashlib.sha256(string).hexdigest(), 'sha384': hashlib.sha384(string).hexdigest(), 'sh

    Pythonでmd5やsha256などのハッシュ値を求める - Yura YuLife
  • How to fix Unicode encode error using the hashlib module?

  • Shift_JIS文化からUTF-8への移行ガイド - Qiita

    まだまだ場所によってはShift_JIS文化は根強く、2015年が終わろうとしている現在でも、「ようやく我が社もUnicodeでシステムを作ることを考えるっ!」なんてところは多くあるかと思います。 そんな現場で、これまでJavaでShift_JISでシステム構築してきたSIer向けのUTF-8移行ガイドです。 文字長のチェック 文字長の入力チェックはShift_JISの世界では、半角文字は1バイト、全角文字は2バイトなので、以下のようなチェックロジックになっていたかと思います。 if (inputValue.getBytes("Windows-31j").length > 20) { errors.add("hoge", new ActionMessage("errors.maxlength", "ほげ", 10)); } UTF-8ではそれらの文字は、1バイト~3バイトで表されるので、バ

    Shift_JIS文化からUTF-8への移行ガイド - Qiita
  • Volleyのレスポンスの日本語が文字化けしてる - Qiita

    Help us understand the problem. What is going on with this article?

    Volleyのレスポンスの日本語が文字化けしてる - Qiita
    teracy_junk
    teracy_junk 2015/01/15
    これと同じの何かでみたなーって思ったらWebView.loadDataだった
  • 50代におすすめのマッチングアプリは

    病院は時間がかかりますが、皮ふ科に行ったら40代の人に今日は2時間以上かかると言われました。マッチングアプリ 50代というのは混むものだと覚悟してはいるものの、相当な会える人がかかるので、ホテルの中はグッタリしたマッチングアプリ 50代になってスタッフさんたちも平謝りです。近頃はマッチングアプリ 50代のある人が増えているのか、50代のシーズンには混雑しますが、どんどん人が長くなっているんじゃないかなとも思います。会える人は以前より増えて今年も近所に出来たのですが、ぼっちゃりの数が多すぎるのでしょうか。困ったものです。 先週、おかずの添え物に使うつもりでいたら、マッチングアプリ 50代を使いきってしまっていたことに気づき、かるめとパプリカと赤たまねぎで即席の付き合いたいを作ってその場をしのぎました。しかし20代にはそれが新鮮だったらしく、マッチングアプリ 50代なんかより自家製が一番とべ

  • 文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog

    ごあいさつ 皆様はじめまして、文字コードおじさんです。細々とカメラ屋を営んでおりましたが、エンジニアとしての技量を評価され、ALBERTのシステム開発・コンサルティング部で働くことを許されました。特技はサーバーの統廃合です。 今回は最初ということですが、Unicodeにおける全角・半角の取り扱いについて触れてみようと思います。なお、さも連載するかのように第1話と銘打っていますが、上層部の無慈悲な裁決によっては1話打ち切りもありえますので、その際はご容赦ください。 固定観念を捨てよう 「全角50文字、半角100文字まで」といったような文言を見かけたことがあると思います。 特にUnicode以前のレガシーな処理系では全角文字に2バイト、それ以外は1バイトという割り当てが慣習となっていました。 このため、「全角=2バイト文字、半角=1バイト文字」という観念が世間に定着しているのが現状です。 しか

    文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog
    teracy_junk
    teracy_junk 2014/04/22
    『「全角だから○○バイトだ!」みたいな考え方は投げ捨てましょう』
  • Unicodeを斬りたい

    ※2014/4/17 記事の内容に関していくつか訂正させていただきました。 ご指摘いただいた皆様ありがとうございました。 誤字脱字を修正しました。 ソースコードの間違いを修正しました。 BOMの記述を分かりやすい表現に修正しました。 合字に関する記載を追記いたしました。 こんにちは。 Yahoo! JAPANで通知プラットフォームの開発をおこなっています佐々木海(@Lewuathe)と申します。 普段は全社向けのPush通知プラットフォームやメール配信プラットフォームの開発、保守をしています。通知というのはPush通知にしろ、メール配信にしろ基的には「テキストデータ」を送ることになります。プラットフォーム内ではこれらのテキストに対してさまざまな処理をかけることになるのですが、さすが日語といったところでしょうか、一筋縄ではいかない部分が出てきました。具体的にはUTF-8でエンコーディング

    Unicodeを斬りたい
  • JavaScript Stringでサロゲートペアを扱う - teppeis blog

    JavaScriptで強力なUnicodeを扱う方法について書きます!(嘘) 先月末に発売されたWEB+DB PRESS Vol.78で「フロントエンドの国際化」の記事を書いたのは前回書いた通り。 WEB+DB PRESS Vol.78に「フロントエンドの国際化」について書いた! - teppeis blog 記事内で、JSの文字列は基UTF-16なのでサロゲートペアがうまく扱えないっていう問題は書いたけど、じゃあどうすればいいの?っていうのは載せられなかったので書く。 文字数のカウント 「𠮷(U+20BB7、つちよしだ)」や「𩸽(U+29E3D、ほっけ)」はUTF-16ではサロゲートペアで表現するのでlengthが見た目とズレる。 console.log("𠮷野家で𩸽".length); // 7 これを「5文字」とカウントしたいという話。 正規表現を使う方法 たぶん実装が一番

    JavaScript Stringでサロゲートペアを扱う - teppeis blog
  • Unicode一覧 3000-3FFF - Wikipedia

    この一覧は、U+3000からU+3FFFまでのUnicodeコードの一覧である。YYY0行X列のコードはU+YYYXであり、HTML文字参照は&#xYYYX;である(環境により表示が異なる場合がある)。 各文字の範囲についてはUnicodeのブロックの一覧を参照。 この項目には、一部のコンピュータや閲覧ソフトで表示できない文字が含まれています(詳細)。

  • Unicode対応 JIS X 0208 文字コード表

    Unicode対応 JIS X 0208 文字コード一覧 JIS X 0208 の区点番号、JISコード、シフトJISコード、EUCコード、Unicode(UTF-8, UTF-16)の文字コード対応一覧です。 文字コードとその文字を順に出力しているだけですので、表示される文字はフォントによって決まります。 01区~08区 JIS非漢字(各種記号、英数字、かな) 13区~13区 NEC特殊文字(機種依存) 16区~47区 JIS第1水準漢字 48区~84区 JIS第2水準漢字 文字コードについてのページや、文字コード一覧についての説明もあります。 JIS X 0208 JIS非漢字 文字コード表 区 点 JIS SJIS EUC UTF-8 UTF-16 字 01 01 2121 8140 A1A1 E38080 3000 01 02 2122 8141 A1A2 E38081 3001

  • CGIで特定の文字(表・予・申・能など)が文字化けする

    ・CGIで特定の文字(表・予・申・能など)が文字化けする 自動バックアップ・テスサーバー付きの新機能スマートリリース CGIやPHPなどの技術系でSuper FAQ(よくある質問)がこれです。下記のような文字化けが発生します。 文字化けしている漢字は「表」「予」「申」「能」「十」「ソ」などです。第1章の「Netscape4.Xのdocument.write時の文字化け」は音が「シ」のものに集中的に文字化けが見られるなど、顕著な規則性がありました。今回の文字化けは、「音」が似通っているという特色はありません。 しかし、それぞれの漢字のShift_JISコードを調べてみると、ある規則性が浮かび上がってきます。Shift_JISコードを調べるには、序論で紹介したようなIMEやことえりの文字一覧表でもいいのですが、ここではURLエンコードを利用してみます。 URLエンコードは、プログラマーでない方

  • 絵文字が開いてしまった「パンドラの箱」第4回--絵文字が引き起こしたUnicode-MLの“祭り”

    普通では考えられない優遇策--「Google提案」を振り返る 皆さんこんにちは、毎度おなじみ(?)文字コード漫談の時間がやってまいりました。前回が3月の掲載ですから3カ月ぶりですか。今まで3回にわたって絵文字をUnicode及びISO/IEC 10646(国際符号化文字集合)に収録しようという提案の動きについてご説明してきましたが、今回から2回に分けて完結編をお届けします。どうぞよろしくお付き合いください。 ひさしぶりですから、ここまでのポイントを整理しておきましょう。前述した「提案」とは、もともとはUnicodeに収録するためにGoogleAppleと共同で作成したものです。以下、主唱者の名前をとり「Google提案」と呼ぶことにします。これはこの2月に開かれた最高議決機関、UTC会議で承認されてUnicodeコンソーシアムの総意となりました。ついでGoogle提案はISO/IEC 1

    絵文字が開いてしまった「パンドラの箱」第4回--絵文字が引き起こしたUnicode-MLの“祭り”
    teracy_junk
    teracy_junk 2009/06/05
    N3452主義を採るのならば、「発音記号の組み合わせとして存在しえるが発音できないし勿論使われてもいない」のに登録されている多くのハングルはどうなのさ?と思う自分は嫌韓なんだろうか?(本当は笑韓)
  • Web便利ツール/URLエンコード・デコードフォーム - TAG index Webサイト

    URLエンコードとデコードが行えるフォームです。 URLエンコード、またはデコードのフォームに文字列を入力し、変換用のボタンをクリックしてください。 マルチバイト文字だけをエンコードしたい場合は「URLエンコード(URL作成用)」をご利用ください。

    Web便利ツール/URLエンコード・デコードフォーム - TAG index Webサイト
    teracy_junk
    teracy_junk 2009/05/26
    URLエンコード⇔デコード
  • ATMARK

    133.242.243.6 / HatenaBookmark/4.0 (Hatena::Bookmark; Analyzer)