文字コード総合スレ Part12

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/12/17(月) 16:48:24.47ID:Pfqpaohb
プログラマーなら一度は煩わされたことのある文字コードについてのスレ。
UTF-8、Shift_JIS、JIS、EUC、Unicode、UCS、サロゲートペア、コードポイント、文字コード判定、
合成文字、ソート、TRON、外字コード、その他について語り合いましょう。
各言語での文字列の扱いについての質問もOKです。
基本マッターリ、ささ、茶でもどうぞ。

■過去スレ
文字コード総合スレ part1 http://pc11.2ch.net/test/read.cgi/tech/1031028205/
文字コード総合スレ part2 http://pc11.2ch.net/test/read.cgi/tech/1143375639/
文字コード総合スレ part3 http://pc11.2ch.net/test/read.cgi/tech/1180250376/
文字コード総合スレ part4 http://pc11.2ch.net/test/read.cgi/tech/1228052369/
 (スレ再利用)UnicodeとUTF-8の違いは? http://pc12.2ch.net/test/read.cgi/tech/1177930957/
 (隔離スレ)UnicodeとUTF-8の違いは? その2 http://pc12.2ch.net/test/read.cgi/tech/1274937437/
文字コード総合スレ part5 http://pc12.2ch.net/test/read.cgi/tech/1236529563/
文字コード総合スレ part6 http://hibari.2ch.net/test/read.cgi/tech/1278923059/
文字コード総合スレ part7 http://toro.2ch.net/test/read.cgi/tech/1306595564/
文字コード総合スレ part8 http://peace.2ch.net/test/read.cgi/tech/1354248962/
文字コード総合スレ part9 http://peace.2ch.net/test/read.cgi/tech/1401301779/
文字コード総合スレ Part10 http://mevius.2ch.net/test/read.cgi/tech/1444822140/
文字コード総合スレ Part11 http://mevius.5ch.net/test/read.cgi/tech/1516629503/
2021/04/08(木) 21:44:00.84ID:5KgENm+i
入出力時のデフォルトコードページの話だから古いか新しいかなんて関係ないんだけどな。

いい加減みんなこのバカ相手するのやめようぜ。
2021/04/08(木) 22:03:05.49ID:cADyO+yl
マイクロソフト謹製のPowerShellは完全にコードページ依存だよ。
MSYSなどUTF8で出力する伝統的な実行バイナリとうまく共存できない。パイプが積む。それが現実。
2021/04/08(木) 23:16:12.03ID:u7kxAAh5
さすがに、このスレにいて Windowsの「メモ帳」アプリのデフォルト文字コードが「 UTF-8 (BOM無し)」に変更されたことを知らない人はいないだろ。
これはMSが UTF-8 BOM無しを今後の標準とすることに舵を切った結果だよ。
これが UTF-16 だったり BOM つきだったりしないのは、単なる気まぐれじゃない。
2021/04/09(金) 01:54:21.80ID:ZRNzIbD0
BOM付きじゃなくてBOM無しUTF-8がデフォルトになったのは驚いた
そっちに舵を切ったのはそうだろう
だがExcelでBOM無しUTF-8なCSVが扱えないとか、リソースコンパイラで
BOM付きUTF-8すら自動判別してくれないとか個々のアプリはまだまだ対応不足
2021/04/09(金) 01:56:45.03ID:s5EJohG2
デフォはありのほうがいいと思うんだがな
2021/04/09(金) 03:06:58.40ID:3uc6Yjpo
>>780
厳密に言うならANSI系のAPIを使ってるアプリのこと
このAPIは元々Win9x用で(UTF-8に対応が発表されるまで)
Unicodeに対応してない古いアプリ用だった

つまりUnicodeに対応しているアプリは
UTF-16を使っていたということ

もちろん内部文字コードとしてUTF-8を使ってるアプリもあるだろうが
それは今も昔も変わらずUTF-8が使える
そういうアプリはOSへ処理を渡すときにUTF-16に変換して渡してる
その変換は正しく作っているなら自動的に行われるのでさほど面倒ではない

なのでアプリ開発側からすれば、そんなにメリットはない
これからはANSI系APIも使えますよーと今更言われた所で
元からUTF-8を使ってるアプリは、UTF-16への(自動)変換が
省略できる程度の意味しかない
今どきWindowsのAPIにバリバリ依存して作ることなんてないしね
2021/04/09(金) 03:08:04.84ID:3uc6Yjpo
>>783
> さすがに、このスレにいて Windowsの「メモ帳」アプリのデフォルト文字コードが「 UTF-8 (BOM無し)」に変更されたことを知らない人はいな
> これはMSが UTF-8 BOM無しを今後の標準とすることに舵を切った結果だよ。

なあ。お前。メモ帳以外の事例は存在するか?
一テキストエディタにすぎないメモ帳のデフォルトが
変わった程度で騒ぎ過ぎだよ
2021/04/09(金) 04:36:09.91ID:l1/kJ2NK
はぁ?
クロスプラットフォームで開発されている実行バイナリはC/C++案件が多いから、WindowsのAPIにバリバリ依存だよ
.NETなんてLinuxやmacOSで動かないだろ
2021/04/09(金) 09:51:30.06ID:dDP8WojW
>>786
> 今どきWindowsのAPIにバリバリ依存して作ることなんてないしね
Windows の API 使わずにプログラムとかww
それこそ fopen() とかの標準Cライブラリこそコードページ依存だろ。もしかしてそれすら知らない?
Mac 使いですか? それとも Java屋さん?
Windows の API まともに知らないやつが プログラム版で Windows について語ってんの?
2021/04/09(金) 10:10:06.15ID:3uc6Yjpo
> Windows の API 使わずにプログラムとかww

え?知らんの?そういうのは言語やライブラリが解決してくれるんだよ。
.NET フレームワークとか、nodeとかrubyとか
Windows APIを使わないことなんて当たり前
2021/04/09(金) 10:12:26.81ID:3uc6Yjpo
> .NETなんてLinuxやmacOSで動かないだろ
動くじゃん
2021/04/09(金) 10:21:23.24ID:7vOVb2O0
EcxelがBOMなしのCSV読めんからな
メモ帳がBOM無しでも関係ないな
2021/04/09(金) 11:02:02.21ID:dDP8WojW
それ以前に .Net デフォルトだとコードページ依存じゃないかwww
ruby は Windows のプログラムじゃないし。
node って何? もしかして Node.js のこと? まさか JavaScript 基準で Windows の文字コード語ってたの?
さすがに、それはないよね...。
node というのは聞いたことない、もしくはどれを指すのが不明なので教えて。
2021/04/09(金) 12:38:07.07ID:3OIwAD6R
>>745
話題持ち込んじゃった人だけど分かりやすい
ありがとう
795デフォルトの名無しさん
垢版 |
2021/04/09(金) 15:21:47.85ID:tQcHQU6Y
nodeはオワコン
るuびyはもっとオワコン
2021/04/09(金) 17:38:21.19ID:3uc6Yjpo
>>793
ああ、今どきのWindowsプログラムを知らんのね
例えばvscodeはJavaScriptで出来てるんだよ
.NETがコードページ依存って何を言ってるんだろうか
2021/04/09(金) 18:36:32.22ID:dDP8WojW
> .NETがコードページ依存って何を言ってるんだろうか
入出力用の文字コードの概念がないやつには一生理解できないだろう(確度の高い予測)
他の人のためにリンク張っとく
https://docs.microsoft.com/en-us/dotnet/api/system.text.encoding.default

ちなみに Linux とかでも動くオープンソース版の .NET Core はコードページないので、UTF-8 (BOM無し)になる。
2021/04/09(金) 18:47:45.05ID:3uc6Yjpo
>>797
そんなの出されても意味がないなぁ。
言語の内部コードと、外部コードの違いわかってる?

例えばPythonの文字コードはUTF-8なわけ
それをStreamRecodeを使って自動的に外部文字コードに変換する時
https://docs.python.org/ja/3/library/codecs.html#streamrecoder-objects

Pythonの文字コードはSJISだ!コードページに依存してるんだ!なんて言わないでしょ
.NETも内部の文字コードはUnicodeなわけ
外部への文字コードへの自動変換を備えてるけど
それはほとんどの言語で標準的に持ってる機能なわけ
2021/04/09(金) 18:48:43.58ID:S5JYCJ7D
そういえば、関係ないけど vscode も UTF-8 BOM無しが規定文字コードだね。
メモ帳だけじゃなくてテキストエディタは UTF-8 ってことか。
2021/04/09(金) 18:51:28.05ID:3uc6Yjpo
>>797
> ちなみに Linux とかでも動くオープンソース版の .NET Core はコードページないので、UTF-8 (BOM無し)になる。

デフォルトで入ってないだけ

PowerShell on Linux(Mac)でShift-JISを扱う
https://blog.shibata.tech/entry/2016/08/22/231538
2021/04/09(金) 19:25:48.50ID:dDP8WojW
>>798
> 言語の内部コードと、外部コードの違いわかってる?
お前がわかってないのは知ってる。ソースコードの文字コードを内部コードと勘違いしてるとか
Python の内部コードが UTF-8 だと思ってるあたり素人丸出し。
Python の内部文字コードはかなり昔から UTF-32 (UCS4) だよ。それ以前は UCS2。
2021/04/09(金) 19:33:45.09ID:dDP8WojW
>>800
> デフォルトで入ってないだけ
デフォルトのエンコーディングの話してたの忘れたの?
入出力用の文字コードが切り換えできるのは当り前で、そのデフォルトが何かっていう話をしてるんだけど
2021/04/09(金) 21:16:02.60ID:ZRNzIbD0
>>801
ID:3uc6Yjpoは何を言ってるのか分からんのでほっとくとして、
Python 3.3からはメモリ使用量節約のため、latin1, UCS2, UCS4の自動切り替えな
https://www.python.org/dev/peps/pep-0393/
2021/04/09(金) 22:16:54.05ID:3uc6Yjpo
>>802
だから.NETのデフォルトはUnicodeだろ
.NETアプリが世界中の文字に対応してるってわかってますかー?
2021/04/10(土) 01:56:42.91ID:Tkmy4TcV
>>803
正確にはそうだね。
ややこしい話しても絶対ついてこれないだろうと思ったの最終的に UTF=32 に落ちるのでいいかと思って簡略化しちゃった。
そこまで、ちゃんとわかってる人がいて良かった。訂正サンクス。
レベル低いの混ると、ついついレベル低い回答になってしまう。
2021/04/10(土) 07:57:12.51ID:wS2LKV0q
.NETアプリが絵文字を表示できるのはなんで?
2021/04/10(土) 07:59:08.31ID:wS2LKV0q
WPFアプリって言ったほうが正確かな?
2021/04/10(土) 09:09:41.00ID:AcLZ31++
互換性のせいでコマンドプロンプトの仕組みが複雑だから勘違いしてるんだろうけど
コマンドプロンプト自体はUTF-16で動いてる
そうでなければUnicode文字を使ったファイル名とかが表示できるわけがない

それに対してコンソールアプリケーションはUnicode(UTF-8、UTF-16、UTF-32いずれにも対応)で
出力するモードとANSIで出力するモードを選べる
Unicodeで選んだらOSによってUTF-16に変換されてコマンドプロンプトに出力される
ANSIモードで出力した場合、OSが自動的にUnicodeに変換してコマンドプロンプトに出力する
このANSIモードからUnicodeに変換するときに利用する情報がコードページ

コンソールアプリケーションは、どれでも好きな文字コードで出力してくださいってだけだよ
コードページの情報を利用するもしないも自由
コードページの情報を無視してSJISで出力することだって出来る
まあそんな事するとコマンドプロンプト上では文字化けするがファイルに出力すればなんの問題もない

Unicodeに対応してるアプリはUnicodeモードで出力するだろうね
作り込んでるアプリなら、コードページに従うだろうねってだけの話
809デフォルトの名無しさん
垢版 |
2021/04/14(水) 13:39:34.45ID:hz0wFRHA
練習
⥁⥀
⟳⟲
↻↺
⤾⤿
⤸⤹
810デフォルトの名無しさん
垢版 |
2021/04/14(水) 15:39:07.59ID:hz0wFRHA
🌍🌎🌏

サロゲ
811デフォルトの名無しさん
垢版 |
2021/04/14(水) 15:40:00.22ID:hz0wFRHA
win10
コマンドプロンプトで
chcp 65001
でも
>>810
は化けたわ
2021/04/14(水) 19:39:34.04ID:35zwdl55
>>810
Windows 10 のIEで表示できた
色はつかんかったけど
もちろんEdgeなら色付きで表示できた
2021/04/14(水) 19:47:01.17ID:35zwdl55
>>811
フォントの問題だからね
echo その文字 > test.txt とかやってファイルに書き出したら
cmd /UのUnicodeモードでUTF-16LEで問題なく保存されたよ
もちろんcmd /Aだとchcp 65001でUTF-8にしたら保存される。
2021/04/14(水) 19:49:01.33ID:35zwdl55
× フォントの問題だからね
○ 表示周りの問題だからね

データ自体は問題なく扱えるといいたかった
2021/04/17(土) 14:25:57.05ID:zVeqA+50
Clarify guidance for use of a BOM as a UTF-8 encoding signature
https://www.unicode.org/L2/L2021/21038-bom-guidance.pdf

・Do not use U+FEFF as a ZWNBSP character; use U+2060 WORD JOINER instead.
・Include a BOM if one is known to be required by a targeted protocol.
・Otherwise, include a BOM when authoring a UTF-8 text file that contains non-ASCII characters,
 is not targeting a specific protocol, and may be opened by applications that will not assume UTF-8 by default
 (this is useful on systems like Microsoft Windows where some applications assume text files to be encoded with the Active Code Page).
・Otherwise, do not include a BOM.
2021/04/17(土) 15:20:55.47ID:ijYyB/Qg
>>813
/u スイッチで出力されるUTF-16LEはBOMなしなんだな
開けないエディタもあった
2021/04/17(土) 16:07:47.50ID:WTle60vg
>>815
要約:明示的に必要とされる場合以外は UTF-8 に BOM 入れるな。
2021/04/17(土) 16:17:49.74ID:WqZ6rzHC
そうでない場合は、非ASCII文字を含み、特定のプロトコルを対象としておらず、デフォルトでUTF-8を想定していない
アプリケーションで開かれる可能性のあるUTF-8テキストファイルを作成するときに、BOMを含めるようにしてください
(これは、Microsoft Windowsのように、一部のアプリケーションがテキストファイルをActive Code Pageでエンコード
することを想定している場合に有効です)。
2021/04/17(土) 19:34:14.90ID:HVVFTxep
>>816
BOMがなにか知っていれば、そんな感想はでてこないはずなんだがな

BOMっていうのは文字コードが「不明なモノ」を認識するためのものだよ
最初から「UTF-16である」と決まってるなら当然BOMはない

出力はUTF-16と決まってるのだから当然BOMは不要
それを文字コードが決まってないファイルに
出力したお前がつけるべきもの

ファイル形式によってはUTF-16と決まってる場合もあるだから
勝手につけるようなことはしない
2021/04/17(土) 19:54:12.40ID:OAsiuDOF
>>819
というか、UTF-16 における BOM って Byte Order Mark という本来の意味の方が大きいと思いますが
もっとも私はアプリ内では全部例外なく UTF-32, win32api に渡すときは UTF-16 に変換, コンテンツの外部表現は UTF-8 にしていますけれども
2021/04/17(土) 19:56:30.03ID:HVVFTxep
だから?
2021/04/17(土) 20:33:08.95ID:OAsiuDOF
>>821
BOMっていうのは文字コードが「不明なモノ」を認識するためのもの、というよりは、エンディアンを知らせるためのものでは?BOM の意義はそちらの方が優勢では?
2021/04/17(土) 22:23:07.48ID:WTle60vg
規格では
UTF-16LE はBOM付けない
UTF-16BE はBOM付けない
UTF-16 はBOM必要
これらは別物なので混同するのは良くない。
2021/04/17(土) 22:25:44.67ID:+T2toyLY
>>819
事実を明示しただけなのに、何ドヤってんだよ
2021/04/17(土) 22:30:24.80ID:WTle60vg
819はUTF-16にBOMが必要という常識すら知らない素人。
2021/04/17(土) 22:57:11.23ID:HVVFTxep
UTF-16にBOMが必要なら、なぜついてないのか説明してくれ
2021/04/17(土) 23:00:00.38ID:HVVFTxep
>>823
規格書ぐらい読みましょう
https://www.unicode.org/versions/Unicode12.0.0/UnicodeStandard-12.0.pdf

The UTF-16 encoding scheme may or may not begin with a BOM. However,
when there is no BOM, and in the absence of a higher-level protocol, the byte
order of the UTF-16 encoding scheme is big-endian

UTF-16 のエン コ ーデ ィ ン グ方式は、 BOM で始ま る こ と も 、 そ う でない こ と も あ り ます。
し か し 、BOM がない場合、 ま た、 上位プ ロ ト コ ルがない場合、
UTF-16 符号化方式のバ イ ト 順序はビ ッ グエンデ ィ ア ンです。
2021/04/18(日) 01:25:27.08ID:cX9tiBqs
ちょくちょく >>823 みたいな読解力ない人が沸くよね
なんでだろ
2021/04/18(日) 04:36:32.83ID:qeZOgBPb
要するに「UTF-16」のパターンは5種類あるってことだね
UTF-16BE 00 4D
UTF-16LE 4D 00
UTF-16 BOM(BigEndian) FE FF 00 4D
UTF-16 BOM(LittleEndian) FF FE 4D 00
UTF-16 BOMなし(=BigEndian) 00 4D
2021/04/18(日) 07:59:39.77ID:3LjqZ5tA
ビッグエンディアンとリトルエンディアンの2つだけだよ
あとはBOMがあるかどうかだけ
2021/04/18(日) 08:08:13.68ID:cX9tiBqs
base64エンコーディングを加えればバリエーションはさらに増えるよ
よかったね
2021/04/18(日) 08:12:27.46ID:cX9tiBqs
玉子とかお新香つけたらバリエーションさらに増える
2021/04/18(日) 16:24:37.92ID:124qy3KD
>>829
五番目と最初は全く同じバイト構成になるので4種類が正解。
BOMなしの UTF-16 は実質 UTF-16BE の別名に過ぎない。
2021/04/18(日) 16:31:23.17ID:R7mD8LSe
BOMはパターンじゃなくて追加のシグネチャだよ
もしこれがHTMLだとしてUTF-8というメタタグがない場合
それはUTF-8とは別のパターンになるかと言ったらそうはならない

パターンとしては同じUTF-8であり
シグネチャがあるかどうかの違いでしかない
2021/04/18(日) 19:12:05.70ID:NuVJC4bd
BOMでこうまで話が続くのな
2021/04/18(日) 19:24:29.98ID:Qxa4OXG6
なつかしのfree論争みたいだな
2021/04/18(日) 21:03:03.56ID:pcxeaSJf
Malloc and Free
https://groups.google.com/g/fj.comp.lang.c/c/G4HRnHTdImg
2021/04/18(日) 22:24:15.55ID:Qxa4OXG6
>>837
うわなつかしい、俺のアドレスもあったw
2021/04/18(日) 22:45:16.09ID:124qy3KD
議論の理由も似てるかも
free()が必要かどうかは環境による。基本は必要最低限で使え。
BOMが必要かどうかは環境による。基本は必要最低限で使え。
というのが正しい答えだが、特定の環境のみ前提に主張するやつや、
念のためにいれておこうと考える不届き者のせいで話が混乱する。
2021/04/19(月) 00:36:54.81ID:NjT32G/K
ぜんぜん違うな。BOMはUnicodeの仕様
2021/04/19(月) 00:38:28.03ID:VxMGqS+h
>>837
俺はこれ知らんかったけど、太田・久野・河野…とそうそうたるメンバーですなあ懐かしい
2021/04/19(月) 00:41:47.58ID:NjT32G/K
昔はみんなバカだった
2021/04/19(月) 00:43:04.40ID:6sLSrXGT
>>839
それに「そもそも BOM という名前が」云々の原理主義者もお忘れなく、あー私のことか‥‥
2021/04/19(月) 01:58:51.92ID:mD3HRAYB
つまりBOMの話題はプログラマ界隈にとって爆弾のようなものだ、とこういうことか
2021/04/19(月) 03:49:32.03ID:v/IxVhS5
>>844
ミニマム・シンプルというのがプログラムの基本というのが理解できないやつがいる。
「不必要なものは入れるな」というのは最低限の知識.
2021/04/19(月) 05:11:58.25ID:krfx63YD
パーセントエンコーディングした文字列を正確にURL引数に渡すには
文字エンコーディングをサーバーに教えるためのパラメーターが別途必要になる。
だが、しかしサーバー側アプリにはBOMの情報をまるっと捨て去って平然と不具合を起こす権利がある。
文字エンコーディングをサーバーに教えるためのパラメーターと同じ役割を果たすのがBOM。
テキストエディタやコンパイラやブラウザはBOMをガン無視する権利がある。
2021/04/19(月) 09:26:00.95ID:v/IxVhS5
すっげー、面白い解釈してるな。どの規格読んだの?
URI は全体で一つの文字列なので、BOM つけるのなら最初の https: とかの前につけないと意味ないんだが?
そんな規格違反の URI に対応する必要があるという主張? それとも文字列の途中に BOM を入れて解釈しろという主張?
2021/04/19(月) 09:31:04.91ID:NjT32G/K
>>845
ギチギチしたら拡張性がなくなるだろ
2021/04/19(月) 09:32:40.01ID:NjT32G/K
不要なもの入れるな=16bitあれば十分=破綻w
850デフォルトの名無しさん
垢版 |
2021/04/19(月) 13:35:40.29ID:v/IxVhS5
それは不要なもの入れる入れないではなくて、拡張性のある実装と拡張性の乏しい実装の違い。
unicode の文字の中には余計なものもあることは認めるが、それは関係ない。
2021/04/19(月) 13:37:50.42ID:qMbr31eM
>>850
つまりUTF-32が正解ってことでしょ?
2021/04/19(月) 15:24:44.16ID:v/IxVhS5
その辺は既に結論が出てる。
UTF-8: 可変長だが ASCII 互換。欧米の文章で長さが最短化。必要なら32bitまで拡張可能。外部コードに最適
UTF-32: 固定長。必要なら32bit分の文字まで拡張可能。内部コードに最適。
UTF-16: メリットがない。拡張性ない。オワコン。将来は特定のOSやプログラム言語やアプリで過去の遺物として残る
853デフォルトの名無しさん
垢版 |
2021/04/19(月) 16:02:17.06ID:krfx63YD
UTF-32が固定長なのはすべての文字が32bit長に収まる時期限定の話でしかない
いずれUTF-64を固定長として定義してUTF-32を可変長にせざるを得ない
そしていつの日かUTF-64も可変長になる日が来る
以後ループ
2021/04/19(月) 17:13:36.69ID:qMbr31eM
>>852
あのさ、UTF-32のBOMを無視するなよ
2021/04/19(月) 17:22:51.43ID:qMbr31eM
> UTF-8: 可変長だが ASCII 互換。欧米の文章で長さが最短化。
って言ってるのに、これが
欧米ではない文章だとUTF-16に劣るという
意味になるってわかってないのかな?
2021/04/19(月) 17:25:16.03ID:qMbr31eM
UTF-16だと2バイトですむのに、UTF-8だと3バイト必要だからな
データ量が33%増加する
2021/04/19(月) 18:49:55.06ID:v/IxVhS5
日本語の漢字かな中心の文章や、中国語の文章などでは UTF-16 の方が短かくなるけど
欧米のやつらは日本語での長さなんて気にもかけないので。もはや UTF-16 はオワコンで意見が固まってる。
欧米のやつらはラテン・アルファベットで効率が良いことと、自分たちが大量に持っている過去のASCIIの資産との互換が最優先。
日本のすみっこで、いくら叫んでも世界の流れは変えられないのだ。
少し腹立つけど仕方ない。
2021/04/19(月) 20:32:37.17ID:FUkgXBz9
WindowsやJavaの内部エンコードに使われている限り生き続けるだけだろ。日本がどうとか関係ない。

>欧米のやつらはラテン・アルファベットで効率が良いことと、自分たちが大量に持っている過去のASCIIの資産との互換が最優先。

そのマルチバイトエンコーディングからUTF-16に乗り換えたWindowsやJavaの中の人は欧米なんだが。
もしかしたらUTF-8を推したいのかもしれないけど論理が支離滅裂。
2021/04/19(月) 21:18:27.77ID:krfx63YD
U+xxxxxxxxで表現されるバイト列をRAWデータで扱うための概念としてUTF-16,UTF-32は必要とされ続ける
2021/04/19(月) 21:27:04.16ID:zdVd8UEw
合成文字があるのにいつまで固定長なんて幻想にしがみついてんだよ
2021/04/20(火) 03:31:33.46ID:CoLJETkU
これからはUTF-16の時代だって思うやつがいるんなら英語の掲示板に行ってぜひ布教してくれ。
もう世の中の流れは変わってることがわかる。昔に戻せるならやってみてくれ。
無理だと思うが、個人的には嬉しいので。
2021/04/20(火) 04:46:32.12ID:fd+AEuq4
git diff コマンドがUTF-16テキストファイルをバイナリ扱いして困る
2021/04/20(火) 08:00:32.57ID:4H0suX3D
これからはUTF-16の時代だなんて思う奴はまずいないだろうが、
これからもUTF-16の時代が続くと思う奴はいるだろう。
2021/04/20(火) 10:21:46.36ID:fKxAzJTs
欧米の奴らも絵文字は使いたがる、これはある意味いいことかも。
2021/04/20(火) 10:27:53.52ID:iwSiTlyl
>>861
これからもなにもずっと前からUnicodeの時代で
UTF-16もUTF-8もその表現の一つでしかないんだが
WindowsのAPIは柔軟だから両方に対応してるね
2021/04/20(火) 21:54:20.56ID:tx5tKo/k
U+xxxxxxxxで表現されるバイト列をRAWデータで扱うためとしても
UTF-16は桁が足りないんだからUTF-16を使っている箇所はUTF-32に移行すべき
2021/04/21(水) 18:18:57.57ID:e3R+sPu0
ASCII文字も1文字=7bitを前提にした文字の並びになっているから
1文字=8bitを前提に文字の並びを変えて
ISO646による言語別の文字の変更(バックスラッシュが円マークになる)も
廃止すればシンプルになっていいね。
ISO8859でもASCII文字の部分は何も変えなかったのは
ASCIIとISO646が普及してしまって変えられなかったから?
2021/04/21(水) 18:25:00.32ID:tWbCEelV
文字コードとフォントは別のものだから…
2021/04/21(水) 18:26:38.07ID:U7I+mJcY
過去のファイルは編集されずにずっと残るんだから古いファイルを
開くために仕様や規格を廃止することは不可能だよ
これからの話しか見えてないのは視野が狭すぎる
2021/04/21(水) 20:28:41.18ID:4tTi5uFJ
過去の文字コードってASCIIでしょ。だったらUTF-8でそのまま読めるじゃん。というのがアメリカンの発想。
ローカルなSJISなどというものは念頭にない。ASCIIに比べれば大した量ではないので変換でも何でもしろくらいに思ってる。
オープンソース系のアプリとか気の早いやつは、もうUTF-8以外のサポート切り捨てようとか本気で言い出してる。
まだ時期尚早と説得してるが、どうなることやら。
2021/04/21(水) 20:58:34.18ID:nyleF7PB
もうAltコード覚えてしまってるから勘弁して
まあ今もアプリ側でマップしてるだろうけど、文字セットの実装が失われると参照が難しくなり方言化が進む
なにより二重ループで一覧表生成出来なくなるだろうしやだー
2021/04/21(水) 21:14:40.01ID:jJZA2zpG
コードポイント=エンコードにできるはずの128-255を捨てるutf-8一人勝ちは避けたい
欧州文字セットでも記号類とか重宝する
8-bitクリーンかを気にする機会減ってきたし、新規参入の機会では
ダイアクリティカルマークは別バイトにすれば記号いっぱい詰め込めるだろ
2021/04/21(水) 21:40:19.43ID:U7I+mJcY
>>870
あのさ頭が悪いって言われるでしょ
過去のファイルの対応を切り捨てるのは現実的じゃないか
仕様や規格からShiftJISが消えることはないという話をしてるの
誰もアプリが使う文字コードの話なんかしてないの
2021/04/21(水) 21:40:20.19ID:U7I+mJcY
>>870
あのさ頭が悪いって言われるでしょ
過去のファイルの対応を切り捨てるのは現実的じゃないか
仕様や規格からShiftJISが消えることはないという話をしてるの
誰もアプリが使う文字コードの話なんかしてないの
2021/04/21(水) 21:56:14.69ID:tWbCEelV
Windows用実行バイナリの場合、システムの文字コードに依存したC言語ライブラリを使ってコンパイルされた実行バイナリが大部分だから、移行は簡単じゃないよ。
新しいライブラリにリンクするよう作り直したバイナリを再配布する必要がある。動作検証がたいへん
2021/04/21(水) 22:23:29.33ID:U7I+mJcY
>>875
例えばどんなのがありますか?
2021/04/21(水) 22:29:47.38ID:nyleF7PB
お堅くwin32API叩いて書かれたバイナリの互換性は驚異的だよな
MSが気まぐれに出しては忘れるフレームワーク叩いてたら知らんが

バイナリ配布文化を育ててしまった原因でもあるが、ここまで大事にしてきたのにエンコード対応なんかで折れてもらっては残念
win10(64bit)でoffice97が元気に動くのは誇っていい
2021/04/21(水) 23:04:31.38ID:tWbCEelV
>>876
ロケール指定する処理が省かれたC言語アプリ全般
2021/04/21(水) 23:10:54.40ID:U7I+mJcY
>>878
だからそれはどれかって聞いてる
2021/04/21(水) 23:11:26.55ID:U7I+mJcY
大部分と言う割に、事例を一個も思いつかないなら矛盾してる
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況