文字コード総合スレ part15 (470レス)
文字コード総合スレ part15 http://mevius.5ch.net/test/read.cgi/tech/1723861080/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
85: デフォルトの名無しさん [sage] 2024/11/10(日) 17:45:01.75 ID:x8h1RQEe $ gcc ConsoleApplication1.c $ ./a.exe テスト0😊 $ ./a.exe テスト1😊 テスト2😊 Error: Command line contains characters that are not supported in the active code page (1252). UTF8 everywhereは厳しいですかね? http://mevius.5ch.net/test/read.cgi/tech/1723861080/85
86: デフォルトの名無しさん [sage] 2024/11/10(日) 19:10:18.70 ID:c/95e8WD WindowsでワイドキャラクタってのはUTF16LEのことだよ? http://mevius.5ch.net/test/read.cgi/tech/1723861080/86
87: デフォルトの名無しさん [sage] 2024/11/10(日) 20:20:44.02 ID:+vLaBA7E UTF-8 everywhere行けました $ cat utf8.rc #include "winuser.h" CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "utf8.manifest" $ cat utf8.manifest <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> <asmv3:application> <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2019/WindowsSettings"> <activeCodePage>UTF-8</activeCodePage> </asmv3:windowsSettings> </asmv3:application> </assembly> $ cl -utf-8 ConsoleApplication1.c $ mt.exe -nologo -manifest "utf8.manifest" -outputresource:"ConsoleApplication1.exe;#1" $ ./ConsoleApplication1.exe テスト1😊 テスト2😊 テスト0😊 テスト1😊 テスト2😊 $ windres --input utf8.rc --output utf8.res --output-format=coff $ gcc ConsoleApplication1.c utf8.res $ ./a.exe テスト1😊 テスト2😊 テスト0😊 テスト1😊 テスト2😊 http://mevius.5ch.net/test/read.cgi/tech/1723861080/87
88: デフォルトの名無しさん [sage] 2024/11/10(日) 22:05:14.87 ID:ictCxOlF >>87 下記の手続きを適用したってことなのかな? Windows アプリで UTF-8 コード ページを使用する - Windows apps | Microsoft Learn https://learn.microsoft.com/ja-jp/windows/apps/design/globalizing/use-utf8-code-page http://mevius.5ch.net/test/read.cgi/tech/1723861080/88
89: デフォルトの名無しさん [sage] 2024/11/11(月) 06:32:20.07 ID:bzvUbbzk はい、検索して適当に拾ってきたのでxmlnsが微妙に違いますが同じことですね MinGW64ツールチェーンではutf8.rcを経由してマニフェスト埋め込みしてますが MSVCツールチェーンではその経路だとこうなります $ rc utf8.rc $ cl -utf-8 ConsoleApplication1.c utf8.res ついでにPythonでもやってみました $ cat ConsoleApplication1.py import sys print("テスト0😊") for s in sys.argv[1:]: print(s) $ python313.exe ConsoleApplication1.py テスト1😊 テスト2😊 テスト0😊 テスト1😊 テスト2😊 環境変数がセットされてたので強制的に空にしても問題ないようです $ PYTHONIOENCODING= PYTHONUTF8= python313.exe ConsoleApplication1.py テスト1😊 テスト2😊 テスト0😊 テスト1😊 テスト2😊 http://mevius.5ch.net/test/read.cgi/tech/1723861080/89
90: デフォルトの名無しさん [] 2024/11/11(月) 11:04:13.71 ID:RXw/cl7Z スレ汚しでしかない http://mevius.5ch.net/test/read.cgi/tech/1723861080/90
91: デフォルトの名無しさん [sage] 2024/11/11(月) 13:27:25.94 ID:ZQtGCGPy >>90 まあ、あの荒れそうな言語がユニコード引数でエラー出すからな http://mevius.5ch.net/test/read.cgi/tech/1723861080/91
92: デフォルトの名無しさん [sage] 2024/11/15(金) 23:15:52.91 ID:5CeogfbD >>73 コードはユニコード それをどうエンコーディングするかでUTF8やUTF16やUTF32などがある ネットの標準がUTF8に統一されてなって ファイルシステムでもUTF8に統一されつつあり プログラム内部でもほとんどの用途はそのまま透過的にUTF8が有利に 固定長で扱うUTF32はムダすぎで 可変長のUTF8は後ろからでも切れ目を間違えことなく 表示幅問題はUTF8/UTF32関係なく発生するため http://mevius.5ch.net/test/read.cgi/tech/1723861080/92
93: デフォルトの名無しさん [sage] 2024/11/17(日) 17:51:56.38 ID:4RtrNUdf >>92 >ファイルシステムでもUTF8に統一されつつあり 例を挙げてもらえますか? http://mevius.5ch.net/test/read.cgi/tech/1723861080/93
94: デフォルトの名無しさん [sage] 2024/11/17(日) 18:35:05.90 ID:hkK5KPG+ >>93 Linux distro, MacOS, android, iOS,... 挙げ始めたが最近のリリースだと Windows 以外のメジャーどころは全部じゃね? http://mevius.5ch.net/test/read.cgi/tech/1723861080/94
95: デフォルトの名無しさん [] 2024/11/18(月) 23:18:52.19 ID:cZsx9Sbk UTF-8は世界の誰もが好むわけではない。 どの民族もUTF-8の良いところと悪いところで悩んでいる http://mevius.5ch.net/test/read.cgi/tech/1723861080/95
96: デフォルトの名無しさん [] 2024/11/18(月) 23:20:18.92 ID:cZsx9Sbk >>94 勘違いしているけど、それらの製品でも区別して使う分けている。 http://mevius.5ch.net/test/read.cgi/tech/1723861080/96
97: デフォルトの名無しさん [sage] 2024/11/20(水) 15:38:36.45 ID:84IcR/Q0 >>94 Linux (ext4) は、ファイルシステムとしてはエンコーディングは規定されてないのでは? ディストロやユーザーがUTF-8を使ったりするのは自由だが よってAndroidも同様 なんだAppleだけじゃんw http://mevius.5ch.net/test/read.cgi/tech/1723861080/97
98: デフォルトの名無しさん [sage] 2024/11/20(水) 16:37:13.78 ID:APWVo8Zw >>97 そんなこと言いだしたら APFS も NTFS も単にバイト列を記録してるのに過ぎない。 それをOSやライブラリとしてどう解釈するかがファイルシステムの文字列。 だから linux kernel でなくて linux distro の問題。 (もっとも最近の Linux kernel はデフォルトで UTF-8 を指定するABIとかあって文字コードの変換したりするけど。別問題) http://mevius.5ch.net/test/read.cgi/tech/1723861080/98
99: デフォルトの名無しさん [] 2024/11/21(木) 12:47:55.86 ID:SUxxkxcm UTF-8も完璧じゃないからな http://mevius.5ch.net/test/read.cgi/tech/1723861080/99
100: デフォルトの名無しさん [sage] 2024/11/21(木) 14:20:22.35 ID:GU8mH0bt >>99 キミの言う「完璧」とは一体... http://mevius.5ch.net/test/read.cgi/tech/1723861080/100
101: デフォルトの名無しさん [sage] 2024/11/21(木) 15:46:00.53 ID:/Qk0W5ej >>98 >そんなこと言いだしたら APFS も NTFS も単にバイト列を記録してるのに過ぎない。 いいえ http://mevius.5ch.net/test/read.cgi/tech/1723861080/101
102: デフォルトの名無しさん [] 2024/12/01(日) 10:32:32.38 ID:RvSn0UL0 UTF8を推しているのは形を変えたASCII信者の老害。 http://mevius.5ch.net/test/read.cgi/tech/1723861080/102
103: デフォルトの名無しさん [sage] 2024/12/01(日) 11:15:01.77 ID:iESkoZBr 刷新できていない古いシステムを除くと 文字コードはユニコードになったね エンコーディングはネット上がUTF8なので それをそのまま扱うのが一般的となったね http://mevius.5ch.net/test/read.cgi/tech/1723861080/103
104: デフォルトの名無しさん [sage] 2024/12/01(日) 12:39:57.84 ID:8fzBRjbp UTF-8 より完璧な文字コードって何だい? ASCII と SJIS と UTF-8 はいいねしたい http://mevius.5ch.net/test/read.cgi/tech/1723861080/104
105: デフォルトの名無しさん [sage] 2024/12/01(日) 20:40:24.45 ID:NnL6xx/e なんか色々ごっちゃだな http://mevius.5ch.net/test/read.cgi/tech/1723861080/105
106: デフォルトの名無しさん [sage] 2024/12/02(月) 03:35:11.02 ID:okRPdXGy 元のユニコードがクソだからなあ 結局どうにもならなくなって異体字セレクタとか出てくるし http://mevius.5ch.net/test/read.cgi/tech/1723861080/106
107: デフォルトの名無しさん [] 2024/12/02(月) 13:49:05.08 ID:Zd1R379W ishの出力ってSJISが標準? utf-8板のish欲しいと思ったけど -Dutf8付けてコンパイルしても結局SJIS出力だった http://mevius.5ch.net/test/read.cgi/tech/1723861080/107
108: デフォルトの名無しさん [sage] 2024/12/02(月) 14:10:00.90 ID:n2j6TE+S バイトデータで出力してるだけでエンコーディング関係ないような UTF-8対応してもバイト単位でみたら7ビットしか情報持てないから損 効率気にしないならコード変換したらいい 半角カナが3バイトになるけどエラー訂正なんかは使える http://mevius.5ch.net/test/read.cgi/tech/1723861080/108
109: デフォルトの名無しさん [sage] 2024/12/03(火) 12:52:43.59 ID:DZc+/1dr たまたまSJISでデコードしたら人間に読める(かもしれない)ってだけで 只のバイナリデータだよね http://mevius.5ch.net/test/read.cgi/tech/1723861080/109
110: デフォルトの名無しさん [sage] 2024/12/04(水) 23:36:37.56 ID:9B20CEFA SJISとして不正なバイト列は含まれないはず http://mevius.5ch.net/test/read.cgi/tech/1723861080/110
111: デフォルトの名無しさん [sage] 2024/12/05(木) 16:18:11.64 ID:riH9D2sC ファイル名がユニコードだと、 例えば2つのファイル名が同一かどうかの判定は、2つのユニコード列が同一かどうかの 判定をしなくてはならない。この場合の同一とはなんだろう。めんどくさい http://mevius.5ch.net/test/read.cgi/tech/1723861080/111
112: デフォルトの名無しさん [sage] 2024/12/05(木) 16:59:22.16 ID:jrS77sb5 >>111 「ユニコード列」みたいな曖昧な用語で考えると曖昧な結果にしかならなんわな http://mevius.5ch.net/test/read.cgi/tech/1723861080/112
113: デフォルトの名無しさん [sage] 2024/12/05(木) 17:16:36.01 ID:jrS77sb5 「ファイル名」という用語に限ってもOSごとに異なる意味をもち、「バイト列/コードポイント表現」(Linux/Windows)と「 unicode 正規化表現」(MacOS)のどっちのやり方もあるし unicode の正規化には複数の種類がある http://mevius.5ch.net/test/read.cgi/tech/1723861080/113
114: デフォルトの名無しさん [] 2024/12/05(木) 19:21:14.57 ID:f+d6ZP2R >>103 ネットはJISもあるから、そう簡単な話ではない。 EメールだとまだJISが主流。 http://mevius.5ch.net/test/read.cgi/tech/1723861080/114
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 356 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.008s