Ticket #46506

設定ファイル保存時の文字コード

Date d'ouverture: 2023-01-10 20:00 Dernière mise à jour: 2023-01-16 00:19

Rapporteur:
Propriétaire:
Type:
État:
Atteints
Composant:
Priorité:
5 - moyen
Sévérité:
5 - moyen
Résolution:
Fixed
Fichier:
Aucun
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Détails

むかしこのような意見が書かれていたのを思い出しました。

https://twitter.com/sempreff/status/1535543032145408001

teraterm5 、Save setup で iniファイル新規保存すると BOM付UTF-16 になることに気付きました。ほぼ ASCII なので、ディスクの無駄な印象です。

確認ですが、BOM付UTF-16 にしたのは「WritePrivateProfileStringW で書くとそうなるから」あるいは「内部的に変換しなくていいから」という理由であっているでしょうか?

Ticket History (3/6 Histories)

2023-01-10 20:00 Updated by: nmaya
  • New Ticket "設定ファイル保存時の文字コード" created
2023-01-12 00:02 Updated by: zmatsuo
Commentaire

ドキュメントを追加しました(日本語のみです)。r10476

テストしていたらメモリリークしていた箇所を見つけたため直しました。r10475

UnicodeではないANSIのiniファイルでもおおむねokなのですが、 "😄"などを保存したときに"?"に 化けてしまうのでUnicode版iniファイルのほうが安全です。

UTF-16エンコードだとスペースの無駄なのはUTF-16の仕様だから、 UTF-16を使っている(UTF-8版iniファイルではない)のはOSの仕様だから、 という感じですね。

非推奨APIというのもありますが iniファイルでUTF-16が使えるのはあまり知られていなくて、 Microsoftのドキュメントからはわかりにくいです。

将来(最近?)はUTF-8BOMなiniファイルを扱えるかもしれません。

それと、lng ファイルを収めた lang フォルダが 「lang」 と 「lang_utf16le」の2つあるのは Unicode版iniファイルが扱えないWindows 9xのためですね。

2023-01-12 00:08 Updated by: nmaya
Commentaire

了解しました。説明ありがとうございます。

2023-01-13 01:08 Updated by: zmatsuo
  • Composant Update from (Aucun) to Document
Commentaire

TODO

  • 英訳
2023-01-14 00:57 Updated by: None
Commentaire

英語版を入れました。r10479です。

2023-01-16 00:19 Updated by: zmatsuo
  • État Update from Ouvert to Atteints
  • Résolution Update from Aucun to Fixed
Commentaire

クローズします。

Attachment File List

No attachments

Modifier

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Connexion