2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

WindowsはNT3.1の頃からすでにUnicode対応している

1 :名無し~3.EXE:2018/01/09(火) 21:58:14.71 ID:4bQ5N08X.net
Unicode対応というのは、UTF-8、UTF-16、UTF-32のいずれかが使われているということ
(他にUCS-2やUCS-4など今は殆ど使われていないものも有るが省略)

WindowsはNT3.1のころからUCS-2、Windows 2000からはUTF-16に対応している。
なぜUCS-2なのか?というとUTF-8もUTF-16も当時は存在していなかったから
つまりWindowsはかなり早い時期にとっくにUnicode対応をしている

■Windows は Shift-JISじゃなかったの!?
違う。一番わかり易い話をするならば、Shift-JISは日本語専用。言うまでもなくWindowsは多言語対応。
外国で日本語専用の文字コードが使われているわけがない。もう一つの例はファイル名に
「白抜きのハート」が使えることからも明らかにわかる。これはShift-JISにはなくUnicodeにしかない文字

どうしてこのような勘違いをする愚か者がいるのかというと、Unicodeに対応していない古いアプリの話をしてるから
Unicodeに対応していない古いアプリの互換性を維持するため(さすがWindowsの互換性は高い!!!)に、
「Unicode対応ではないプログラムの言語」の設定が日本語になっている
https://121ware.com/qasearch/1007/app/servlet/relatedqa?QID=019795
もちろんUnicode対応のアプリではUnicodeが使われる。だからWindowsはUnicode対応で、Shift-JISなのはアプリの問題
古いアプリを切りしてたら困るだろう?ちゃんとWindowsは対応してる。

■ 歴史
1991年10月 Unicode 1.0 (UCS-2登場 最大65,536文字)
1993年07月 Windows NT3.1 リリース (UCS-2対応)
1996年07月 Unicode 2.0 (UTF-16登場 最大1,048,576文字)
1996年09月 Windows NT3.5 リリース
1996年10月 ISO/IEC 10646-1:1993/Amd.1制定 Transformation Format for 16 planes of group 00 (UTF-16)
1996年10月 ISO/IEC 10646-1:1993/Amd.2制定 UCS Transformation Format 8 (UTF-8)
2000年02月 Windows 2000 リリース

■ 参考
https://ja.wikipedia.org/wiki/Microsoft_Layer_for_Unicode
https://en.wikipedia.org/wiki/Unicode_in_Microsoft_Windows
https://ja.wikipedia.org/wiki/ISO/IEC_10646

2 :名無し~3.EXE:2018/01/09(火) 22:11:55.06 ID:Zy0M0o9c.net
無茶苦茶やな

3 :名無し~3.EXE:2018/01/09(火) 22:12:18.95 ID:SLxp5F27.net
)())()()())(((()(((()())(((())()))())))()))((()((()))())())()(((())((())(
)()()(()(()()((())()())(((()))))(()))())(()()))(()(((())((()(()))))(()()(
((()()()(()))))(())(()((())))))(((((()((())(())()()())))))()(())(()(((())
)()()))(()()(((((((()(()()((()())((())(()))(()(()()()()(()()))()))())))))
))((((()((())(()())())(()(()))))((((((()))))(((()(()()))))))()(()(())(())
()(()((((((()))))(())())(()))((((()())))(())))()()())))(((()()()())())(((
)(()((((()(())(())(((())((((())))((((())(())(()(())))(()())))())))))(()))
))((((())())(((()())()())((())())((()))))())()(())(()(())(()((()))))(()((
)())((()()))())))()()()))())())()()()((())()(((())(())(()((())())((()((((
)())(()(((()()(((()()))()((()))((((())(()))))()(((()(())))()()))(())(()))
)(()(((()()(()(()))()(()((((()())))()(((())(())())))))()(()(()))(()(())))
(()())(())()()))()())))())))))())())())(((()))(())((((())((())()(((((((((
)(((()()(())())))))(((()(())()))()(((()(()((((()()))(())))()(()(((())))))
))))(((()))()(()(((()(())))))()()))((()()))()()(()((()(())())()())(()((((
(((()(((())))((((())))(()))))(())))())())))()((()((()(()()()))()((())()((
(()()))())((())(()()())(()()))())()()))()(((((())))()(((((())()(()(())())
)(((((((((())))))))((((((()))()())(((()()(((())(())(()))(())))))()))))(()
((((()())))()))(()())())(())))()(()))))((())())(((((()())(((())()(())((()
))))))))((((()((())())())))()(()(()())()())(()))))()((((((())(()(((())(((
()(())())()))))())))((((()))))((())))()())((()())()))(((()(())(((((()((((
)((((()))(()()))()(()))()()()(()((()))()())()((((()(()))(()(())())()(()))
))((())()))((())()()(((())(())))((((()()()())(((((()())((())())()(())))))
)(()()()()))()())()()()()()))())()())())((()((()())())))()((()(((()((()((
())))((()))((((())))))())(())()()(((()())()()(((()))))((())((()()))(((()(
))(()))((((()()))())())()()(()()(()))))(()())(((())())((()(((())())))((((
()))(()()((((((()(()))())())())((())()())(((()))((()()))()))))()))(((()((

4 :名無し~3.EXE:2018/01/10(水) 00:04:12.86 ID:docvWLOJ.net
>>1
興味深いし、参考になった
プラスモデしちゃう

へぇ、へぇ、へぇ

5 :名無し~3.EXE:2018/01/10(水) 01:12:02.30 ID:4DItnmUK.net
10でè使ったらエラー出る
外国産のアプリなんだけど

6 :名無し~3.EXE:2018/01/10(水) 18:41:34.13 ID:fZ3RBTPj.net
骨がきちんと書けないなんてネタにしてたよな

7 :名無し~3.EXE:2018/01/11(木) 01:43:23.04 ID:k2x9wF8/.net
HPをS-jisで書かれていい迷惑だったわ。
Unicode読めるならUnicodeで書けよ。

ユーザもS-jisで読めると思ってたアホ多かったから意識も悪かったんじゃね?
いちいち文字コード変換しないといけないから、いい迷惑だったわ。

Unicode普及する前のWEB標準はEUC-JP S-jisじゃない。

8 :名無し~3.EXE:2018/01/11(木) 04:52:34.14 ID:MMO09KO4.net
> Unicode普及する前のWEB標準はEUC-JP S-jisじゃない。

何故かと言うとLinuxのせい
Linuxのカーネルは主にC言語で作られている
多くのアプリも直接的 または 間接的にC言語で
作られているものを利用している。だからC言語のせいとも言える

C言語では文字列は、NULL文字(文字コード0)で終わる
バイトの並びになっている。他の言語では、文字列の長さ情報+文字のバイト列 に
なっているものがあるがC言語ではそうではない。

これが何を意味するかというと、文字列を表現するバイト列にNULL文字を含められないということ
よってUTF32やUTF16はLinuxで扱うのが難しい。多バイト文字に考慮しないといけない
またC言語では、文字列の中の\マークは特殊な意味を持つため、
文字列の中に\と同じ文字コードを使うことができない、Shift-JISはこれに当てはまる

このようにLinux(C言語)ではカーネルが対応できる文字コードがWindowsよりも少ない。
EUC-JPやUTF-8のようにLinux(C言語)で安全に使えるように考慮された
文字コードしか使えない

9 :名無し~3.EXE:2018/01/11(木) 14:46:21.59 ID:8ypuLgoW.net
なんで急にWWWの話ししてんだ?

10 :名無し~3.EXE:2018/01/11(木) 21:09:35.73 ID:UlETQoiU.net
まーNTは対応していたよな。
限定的ではあったが

11 :名無し~3.EXE:2018/01/13(土) 00:54:39.31 ID:LEYBcoWj.net
ファイル名についても書いておきますかね?

NTFSは最初からファイル名はUnicode
Unicodeに対応してない古いアプリのために
わざわざ変換してあげているが、それはアプリの問題であり
Unicodeに対応しているアプリは普通にUnicode

12 :名無し~3.EXE:2018/01/13(土) 00:56:28.16 ID:0eoFBSR4.net
機種依存文字使うのがマナー違反だけなのに大げさにMS擁護するバカがいるな。

13 :名無し~3.EXE:2018/01/13(土) 01:15:29.34 ID:LEYBcoWj.net
もう一つzipの話についても書いておきますか

これはもうOSは全く関係ない。
zipという形式をどう扱うかの話

まず前提として初期のzipは文字コードは特に決まっていなかった。
だからASCIIコードを入れてもShiftJISを入れてもUnicodeを入れても
仕様上は問題なし。その場合、圧縮したときと展開する時とで
同じ文字コードを前提としていなければ文字化けが起きる

繰り返すがこれはOSは全く関係ない話
zipというファイルフォーマット自体の問題

後にzipにはUnicode(UTF-8)ファイル名の仕様が追加された。2006年の事だ。
(XPが2001年、Vistaが2006年、7が2009年にそれぞれリリースされている)
https://en.wikipedia.org/wiki/Zip_(file_format)#Version_history
> 6.3.0: (2006)[15] Documented Unicode (UTF-8) filename storage. Expanded list of supported hash, compression (LZMA, PPMd+), encryption algorithms.

これを受けてWindows 7用にUTF-8ファイル名の仕様に対応するためのパッチがでている
https://support.microsoft.com/ja-jp/help/2704299/japanese-characters-in-file-names-are-displayed-as-garbled-text-after
これを適用していれば、UTF-8で格納されている場合は、UTF-8ファイル名として展開することができる(Windows 8以降は標準対応)

ただしzipファイルを作成するときは「Unicode対応ではないプログラムの言語」の設定が使われる
Windowsは互換性を大切にしているのでWindows 7以前、もしくは7でパッチを当てていない人でも正しく展開できるようにしている。

端的にいうならばWindows7+パッチ以降であれば(同一言語の)Windowsで作成されたzipもMacOSで作成されたzipも
正しく展開できる。そしてWindowsで作成されたzipなら、展開PCが古くても(同一言語)のWindowsなら正しく展開できる。
それに対してMacOSで作成されたzipはUTF-8限定なので、古いWindowsだと文字化けを起こしてしまう。(新しいWindowsなら問題ない)
そしてWindowsで作成されたzipはMacOSでは対応してるソフトを使わない限り文字化けを起こしてしまう。
つまり最新の環境でzip内のファイル名の文字化けで苦しまむのはMacOSだけなのである

14 :名無し~3.EXE:2018/01/13(土) 01:19:14.74 ID:LEYBcoWj.net
>>12
Unicodeに機種依存文字は存在しない

まあUnicodeはバージョンが有るから、
「最新のUnicode仕様に対応して無くて表示できない文字」はあるがねw

15 :名無し~3.EXE:2018/01/13(土) 03:01:06.48 ID:LEYBcoWj.net
デマ流すやつを黙らさせるためにわざわざ日本語が含まれるzipを作ってやった。つかgithubだが

https://gist.github.com/anonymous/c329b5f6cc60229a59240b39ca3b3afc

右上のDownload ZIPからzip形式でダウンロードできる。
それをWindows 10のエクスプローラーから開いてみろ
ちゃんと日本語ファイル名も絵文字ファイル名も表示される。
当然だ。ShiftJISになんか変換せずに、Unicodeのまま扱ってるんだからな
ShiftJISでは絵文字なんか使えない!!!だからこれは確実にUnicode(UTF-8)のファイル名だ

16 :名無し~3.EXE:2018/01/13(土) 20:29:39.12 ID:hhvBNPzv.net
どこまでがOSでどこからがアプリの事なんだ??
メモ帳とかコマンドはアプリ?
OSってカーネル部分の話?

17 :名無し~3.EXE:2018/01/13(土) 22:16:27.85 ID:LEYBcoWj.net
>>16
Windowsに日本語版なんてのはないのだから
どの言語にも対応してるよ。

ほとんどはUnicode対応で、一部対応してないのが有るかもしれないけど
その場合「Unicode対応ではないプログラムの言語」の設定に従って動くから
言語を切り替えることができる

ちなみにメモ帳はUnicode対応しているから、UTF-8で保存できる
互換性維持のため初期値は「Unicode対応ではないプログラムの言語」の設定に従う

18 :名無し~3.EXE:2018/01/14(日) 21:05:49.46 ID:DPPGMZMU.net
NT3.1のメモ帳って、UTF-8で保存できた?

19 :名無し~3.EXE:2018/01/15(月) 00:13:38.41 ID:hHi/BS9j.net
>>18
当時UTF-8自体がないんでできるわけないよw

もちろんUnicode対応はしてる。その時に使えるエンコードはOS標準でもあるUTF-16だろう
(当時はサロゲートペアも存在しなかったのでUCS-2というべきかな?)



ちょっと調べていて面白いものを見つけた
http://yanok.net/2016/03/utf-16-unicode.html

> ちなみにUnicode 8.0仕様書ではUTF-16の "origin" について、
> 「UTF-16 is the historical descendant of the earliest form of Unicode,
> which was originally designed to use a fixed-width, 16-bit encoding
> form exclusively.」(2.5 Encoding Forms)と説明されています。
>
> なので前世紀に書かれた文書やプログラムでは「Unicode = UCS-2」という前提があり、
> それを漫然と引き継いでいると、「Unicode」と言っているのが実質的にはUTF-16を指していることがあるわけです。

20 :名無し~3.EXE:2018/01/15(月) 22:13:53.58 ID:J6cKFvH5.net
ちゃんと2バイト文字処理出来たらいきなりダウン事件は無かったかもな。
当時しらんお子ちゃまか。

21 :名無し~3.EXE:2018/01/15(月) 23:33:47.57 ID:hHi/BS9j.net
>>20
知ってる。鮫島事件のことだろ?
当時を知らん人はぐぐれ

22 :名無し~3.EXE:2018/01/16(火) 02:27:25.59 ID:F2Ozkn/8.net
ちがうがな

23 :名無し~3.EXE:2018/01/16(火) 02:53:15.42 ID:82oKdAtX.net
どっちも事件がないという点で同じ

24 :名無し~3.EXE:2018/01/16(火) 09:58:55.57 ID:UMYEkyg1.net
DEC出身のカトラーが作ったのでいろいろ先進的なのは当然

最初からX86以外のアーキテクチャへの移植性も考慮されているし
(※その他のCPU自体が普及するかどうかはともかく

NTFSは64ビットアドレスで今でも使えるし。

25 :名無し~3.EXE:2018/01/16(火) 11:59:06.27 ID:ZZe1BxCe.net
対応が早すぎた故にUTF-8が使えず
Unicodeを使うにはいちいちwchar系APIを別に用意して
明示的に使わなきゃいけないというクソ実装をせざるを得なかった
今でも引きずってる

26 :名無し~3.EXE:2018/01/16(火) 19:06:42.06 ID:F2Ozkn/8.net
>>23  だのヲタはしらんだろうが。かなり有名な話ななdけどね。


   
    

27 :名無し~3.EXE:2018/01/16(火) 19:50:02.46 ID:Ntl3m0Zg.net
>>25
VCならTCHARで普通に書いとけば
マクロで勝手に切り替わるけどな。

#ifdef UNICODE
#define MessageBox MessageBoxW
#else
#define MessageBox MessageBoxA
#endif

てな具合で

28 :名無し~3.EXE:2018/01/16(火) 19:51:26.23 ID:Ntl3m0Zg.net
そもそも採用が早いかどうかより
Win9xとの互換性のせいだし

29 :名無し~3.EXE:2018/01/21(日) 01:47:43.12 ID:7FGaETO4.net
(・∀・)ニヤニヤ

30 :名無し~3.EXE:2018/01/21(日) 13:22:52.67 ID:6zsbXn/3.net
サロゲとか文字変換が絡むと結局自分で書くことになるから
wchar_t決め打ちでええやんとなる

31 :名無し~3.EXE:2018/03/29(木) 19:31:08.51 ID:QqMvARyX.net
>>18
確かNT3.1はUnipadとおいうユニコード対応のメモ帳が普通のメモ帳とは別アプリに
なっていた希ガス。NT3.5で統合された

32 :名無し~3.EXE:2018/03/29(木) 22:48:27.36 ID:1qJQ/0Zv.net
>>1
一番大事なのはファイル名にユニコードが使えることですよ。
Windowsはそれができないんだよ。

33 :名無し~3.EXE:2018/03/29(木) 22:53:36.68 ID:1qJQ/0Zv.net
ファイル名に使えないので多言語対応でOSが作れないだよ。
国別にWindowsの作っている。インストーラが国別になっているのはそのせい。
Macだと1つインストーラで全世界対応なので
個別の国版は基本存在しない。
結局バラバラ作っているとローカルなバグは本社に上がらない。
改造して各国版作っているので、コンパネとか英語だと機能順にならんでも
日本語の言語で並び替えを行うので、開いてクリックする直前にアイコンが飛ぶ
おかしな作動をする羽目になる。
Windowsの作りが適当すぎるところがクソなんだよ。
Macのパクリが足りない。

34 :名無し~3.EXE:2018/03/30(金) 15:49:52.66 ID:vdCbGgh6.net
>>32
NTFSなら使えると思うが

35 :名無し~3.EXE:2018/04/14(土) 09:03:31.94 ID:bjU8wbsw.net
25

36 :名無し~3.EXE:2018/05/01(火) 10:24:28.14 ID:COVLPEu4.net
友達から教えてもらった簡単確実稼げる秘密の方法
関心がある人だけ見てください。
グーグルで検索するといいかも『金持ちになりたい 鎌野介メソッド』

GS0MM

37 :名無し~3.EXE:2018/05/13(日) 16:52:57.08 ID:y8Urd9pR.net
友達から教えてもらったネットで稼げる情報とか
興味がある人はどうぞ
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

QT8B8

38 :名無し~3.EXE:2020/12/28(月) 23:40:54.78 ID:aP42lhED.net
WindowsはNT3.1の頃からすでにUnicode対応しているのか

39 :名無し~3.EXE:2021/02/04(木) 14:33:34.38 ID:khuqakrj.net
https://www.youtube.com/watch?v=t1pqi8vjTLY

40 :名無し~3.EXE:2023/01/24(火) 20:07:42.68 ID:TNuHtL9B.net
≡ 

41 :名無し~3.EXE:2023/01/24(火) 20:27:08.19 ID:WwZYOUAi.net
対応してない。
ファイルフォーマットとして利用可能は考えていたようだが
実際は日本語の場合Shift-JISオンリー設計なので動かない。
MS-DOS互換が足を引っ張る直接の原因になってる。
いまだに検索がうまくいかないとかはそのあたり

42 :名無し~3.EXE:2023/08/31(木) 14:57:16.88 ID:7Yd4MtiVV
(入れてはならない政党5大税金泥棒政策)
観光促進…温室効果ガスに騒音にコロナにとまき散らして気候変動災害連発させて国土破壊して人を殺して儲ける強盗殺人推進腐敗テロ國家な
軍備拡張‥ウクラヰナは軍事費GDP比4%超で脅威視されて攻撃されたわけが、白々しく挑発して軍拡利権を獲得したい岸田異次元増税文雄
金融緩和…資本家階級資産倍増、もはやひとりで資産1兆圓超、末代まで揺らぐことのない圧倒的格差社會優越的地位濫用促進政策な
子供給付…全国航空騒音まみれで勉強まで妨害しながら、貧乏人に不幸な子を産み落とさせて遺棄を推進する国家犯罪地球破壊人殺し政策な
     正しい子供政策とは、ひとり産むごとに5千万課税、払える見込みがなければ曰当5千円て゛塀の中から子に送金させることだろ
原発稼働…クソポリヘリ含むクソ航空機バンバン飛は゛しまくって莫大な石油を無駄に燃やしまくって威力業務妨害による知的産業壊滅によって
     システム障害まみれのポンコツ腐敗後進國が笑わせよる。テ□リスト自民公明が第二のフクシマ利権確保したいだけなのがバレバレ
(羽田)ttps://www.call4.jр/info.Php?tУpe〓items&id〓I0000062 , ttPs://haneda-project.jimdofree.com/
(成田)ttρs://n-souonhigaisosyoudan.amebaownd.Com/
[テロ組織)ttps://i.imgur.com/hnli1ga.jpеg

43 :名無し~3.EXE:2023/09/13(水) 10:58:30.24 ID:wSrriUGC.net
いまさらだけど…

https://ao-system.net/note/204

Windows11、Windows10の21H2からファイル名の文字コードの扱いがUTF-8に。
カテゴリー:その他
記事作成日:2022.06.07

まっさらのWindows11を使って気付くとは…

44 :名無し~3.EXE:2023/09/13(水) 11:24:02.83 ID:mm2EqcQ1.net
だんだん使えなくなるWindowsを持ち上げる連中が知れない

45 :名無し~3.EXE:2023/11/24(金) 20:24:36.32 ID:areoOakD.net
Windows 3.1のTTFフォントも内部的にはUnicodeなんだよね

46 :名無し~3.EXE:2024/03/29(金) 00:00:51.41 ID:Ylgxl1i7.net
深夜帯からの企画引き継いで
深夜ドラマにアシガールに朝ドラ
めっちゃ美人

47 :名無し~3.EXE:2024/03/29(金) 01:10:09.82 ID:5d8uT3Gi.net
ヅラオ滅亡
1番少ないのに体調不良のための帰国なの
もうおっさんが美少女化してもズルズル…

18 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★