UTF-8 と UNICODE の変換


公開 (UL): 2020-05-04
更新 (UD): 2020-05-04
閲覧 (DL): 2020-10-27

この記事のもくじ

前の記事

2020-05-04
エスケープ文字変換/復元

次の記事

2020-06-07
存在不明のパス名からディレクトリを構築する

最近の記事

2020-03-23
準プレーンテキスト形式
2019-12-06
プレーンテキスト文字化けのブラウザとサーバ対策
新着情報

新着情報 Recent docs.

Sorry, but almost these pages are only Japanese.
表計算ソフトで予定表を自動作成する超便利な方法 «How to make the schedule table automatically on spread-sheet.»
「毎月第○×曜日」的な法則は自動で作らせてラクしよう!

「差別意識」を世に広め続けるタテワリ行政 «"Tatewari" means hard to work over-ministries cooperation in Japan. I'm worried it makes racist mind.»
「タテワリ構造」が解消しないと「差別意識」も根絶できない話。

人気記事 Frequent view pages.

表計算で「令和」に対応する方法
How to adapt the Gengo era "Reiwa" on spreadsheet applicaiton.

古いアプリも OK。「表計算 令和」の検索結果上位御礼!
表計算ソフトに「個人情報保護機能」を仕込む方法 «Prevention to leak private-data with spread-​sheet macro function.»
「漏えい」のためのフェイルセーフ。「表計算 個人情報」の検索結果上位御礼!
Wary-Basher (ワリバッシャー)
DIY device that enables the handicapped to operate many things with a switch like push-button.

障害者の様々な操作をスイッチ操作で実現する器具。キットも発売中! 「作り方」PDF ダウンロード多数御礼!←地方教育委で人気。
NTT 東日本代理店の勧誘のあり方に対する疑問 «I feeled pretty doubt the solicitation of "Optical-fiber communication" from the agency of NTT-east corporation.»
「あえて」分かりにくい説明をする業者に儲けさせてはいないか?
貧乏人を殺す行政の構造 «Structurally, the administrators kill the poors in Japan.»
ヘタすると多摩川に流されるところだった台風 19 号

この記事に対する → 調布市の反応

おすすめ! Recommend

「事故防シート」について «Cared persons taking with "Jiko-​Bow-​Sheet" prevents from accidents.»
介護現場の負担軽減と事故防止のアイデア
キーボードの「キー」の詳しい使い方 «The detial of usage each key on keybord.»
各キーの機能詳細。機能別五十音順一覧。
和易ゐ記 (WAI-WIKI) «WAI-WIKI is light­weight markup language for Japanese, and generates HTML on this server on-​demand.»
当サイトで開発/使用中の日本語向けに特化した軽量マークアップ言語

ご支援 Support this site.

この活動をご支援いただける方はこちらへ
Could you support this site, see here (but Japanese).

● perl の場合

◆ UNICODE(int16)→UTF-8

 16 ビット限定なら,ある程度簡単なのだが……。

▼ perl で UNICODE(int16)→UTF-8
  sub UC16toUTF8 { # (int16)
    my $c = $_[0];
    return ( $c < 128 )? chr( $c ):
	( ($c < 0x800 ? (chr( 0xC0 +( ($c >> 6)& 0x1F ) ) ):
	  (chr( 0xE0 +( ($c >> 12)& 0x0F ) ).
	   chr( 0x80 +( ($c >>  6)& 0x3F ) ) )
	). chr( 0x80 +(  $c & 0x3F ) ) );
  }

 3行めにある条件式を ( $c < 128 && $c != 0 ) にすると,C言語の ASCIZ 文字列内で「ヌル文字('¥0')」を扱う時にも使えるはず。
 この場合「サロゲートペア」は 16 ビット超えコードにはならずに,3×2=6バイトになっちゃうので,あくまで限定的仕様。



© M.Ishikawa; TREEWARE 2020.