アカウント名:
パスワード:
まず、お前の所からやれ。何で Shift_JIS でしかセーブできないツール残してるんだ(怒
システムロケールの「ベータ:ワールドワイド言語サポートでUnicode UTF-8を使用」を有効にしたら、メモ帳でCP932/ANSIで保存したテキストファイルが盛大に文字化け。
既存のtxtを全てUTF-8で保存し直さない私が悪いのか、txtをメモ帳なんかに関連付けしている私が悪いんだろうなぁ。
要注意な設定変更のようですね。
Windows 10の「ワールドワイド言語サポートで Unicode UTF-8 を使用」は要注意https://srad.jp/submission/85086/ [srad.jp]
非互換変更なんだからトラブル起きて当然では。もともとBOMは互換性維持のための機能なんだし。
気になるのは、Microsoftがこの非互換変更をなし崩しにやろうとしている感があるところ。ちゃんと移行のタイムスケジュールをアナウンスして計画的に対応できるようにしてほしい。
ちゃんと移行のタイムスケジュールをアナウンスして計画的に対応できるようにしてほしい。
いやー、理想はやるべきだし、やってくれたら素晴らしいけど、大変だぜーこれは。スケジュール切って移行せい!言っても未だにShift_JIS使ってるようなとこは大体ガン無視でしょ。MSも持ってるツールがShift_JISがデフォルトかそれのみになってるやつを悉くUTF-8デフォルトにする訳でしょ。保守放置されてるシステムとかツールとか問題を誰がケツ拭くのかとか、結局部分的にShift_JIS生かすオプション付ける羽目になるとか、Xデー迎えても現実は完全移行には程遠いとかなりそうですよ。
最低でも簡単なメニュー操作で word, excel, その他主要ツールに UTF-8 でイクスポートするとか、SJISをインポートするとか、そのあたりの整備から始めてくれないと、過去の遺産持っている人は誰も以降できない。
あとFATファイルシステムとか ZIP アーカイブの文字コードの切り換えとかも欲しい。
何を言いたいのかわからんが、FATはSJISなんて使ってないぞ。
FATファイルシステム上の日本語ファイル名はShift_JISじゃないかなぁ。
FATのバージョン書かないと。exFATはUnicodeですし。
VFATのロングファイルネームはUTF-16。OSでSJISに変換かましてるだけ。
長いファイル名はUTF-16だけど、短いファイル名はOEM文字列(=ShiftJIS)のままじゃなかったけ?
8.3形式はASCIIの一部のみ。
FATっていったらFAT16のこと。
そのオプションを有効にしたお前が悪いhttps://twitter.com/unagix/status/1198150413003837440 [twitter.com]そもそも最新のWindows 10のメモ帳ではそのオプションが有効かどうかに関わらず標準の保存形式がBOMなしUTF-8になっているはずだが
具体的にどのツール?
cmd.exeや、こまごまとしたDOSコマンドは今更直してられないだろうから、もう仕方ないと思う。(昔のCプログラムを正しくUTF-8対応させるのは大変すぎるし…。UNIX系プラットフォームでもすごく時間がかかった)PowerShellならUTF-8問題ないので、なるべくPowerShell使う方向で対応でしょう。
それ以外のアプリはおおむね直ってると思う。昔はSQL Server付属のsqlcmdがShift-JISしか読まなくてムキーとなった記憶があるが、今は改善されたっぽい。
cmd.exeならとうの昔にchcpで各種コードページに対応してるのだが。
Windows 10になるまでchcp 65001は使い物にならなかったけどね。Console CPはA系関数のエンコーディング変換とかには影響しないし
ZipフォルダーがいつまでもシフトJISのファイル名で保存し続けて、シフトJISにない文字を含むファイル名を書庫に追加しようとするとエラーを吐く。展開の方はUTF-8に対応済みだしOneDriveの一括ダウンロード機能などで生成されるZipのファイル名もUTF-8だし未パッチの状態でUTF-8ファイル名の展開をサポートしないWindows 7はサポート終了したからいい加減対応してもらいたいのだが
提供したUSBストレージ(32GB)には、内部ファイル名がUTF8のZIPファイルと、内部ファイル名がSJISのZIPファイルが入っています。両方を正しいファイル名で解凍した上で、それがエクセル・ファイルがあった場合は CSV (文字コードは UTF-8 BOM無し) に変換し、他の解凍したファイルと一緒にして全てを提供したUSBストレージに追加して返してください。
・マイクロソフト標準ツール以外には使用できないものとします。・作業途中でのレジストリ直接操作などは禁止とします。・USBストレージに元から入っているファイルは消してはならないものとします。・外字のみ文字化けを許容します。
ExcelからCSVに変換が出来ないから無理かな。あと、動かすOSが何かによる。
EXCELはUTF8のCSV読み書きできるでしょ。bomなんてPowerShellで付けたり外したりすりゃいいし
>マイクロソフト標準ツールとかいってる癖に、何勝手にOfficeインストールしてるんだ?
でもよく考えたら、元のコメはなんで「標準ツール」って縛りを入れたんだろうね?OSは、最初からバンドルされているソフトに捕らわれない、自由で活発なアプリケーションのエコシステムがあってナンボのモノなのに。CentOSのミニマル版にはzipもunzipも入ってない。
インストールしてませんよ。Officeは最初から入っているものです。
Office は標準ツールで良いんじゃない? OS付属ツールとは言っていないんだし。とことで UTF-8 の CSV の書き出して、どうやるの?
業務的な使用を想定しているのでは?フリーソフト含む標準外のインストールはNG、レジストリいじるのもシステム破壊のリスクがあるからNGとか
いや、できるはできるんだが…ただUTF8のCSVを開くと文字化けするので、データのインポートを使ったり(すると勝手に表のデザインが入ってくる)、BOMを追加してUTFだとわからせるとか、コンバータでSJISに直すとか、君はお茶の子さいさいでも、一般の人からみたらやっぱり裏技だろう?事務のおばちゃんに説明できるか?こんなやり方。
https://primarytext.jp/blog/1275 [primarytext.jp]
LibreOfficeでもCSVを開くときには文字コードはこれでいいのかって確認が入るようになっているのに。
そもそも、ダブルクリックでCSV開くこと自体が害悪ですよ。データが暗黙の型変換されてデータが壊れるリスクがあります。しかも、データの件数とか並び順に影響されるから再現性が極悪。
マクロか、Accessでも使ってちゃんと加工した方がよろしいでは?
ダブルクリックで開かなくても、ファイル、開くでも結果は同じだよ。マイクロソフトがUTFを推進するのなら、ExcelがCSVのコードをSJISに決め打ちしているのはどういうことなんだってこと。マクロとかで解決してもそれは応急処置、はっきり言えば誤魔化しでしかない。標準の機能として搭載されているべきだと思わないか?もう一度言うけどLibreOfficeでは開くときに文字コードを確認できるようになっているんだ。それだけのことがExcelにできないはずはないのになぜやらないのかってことなんだ。
お使いのExcelのバージョンが幾つか知りませんが、ダブルクリックや履歴でなく、ファイル→開くでファイルの種類がテキストファイル(CSV)だと、テキストファイルのインポートが起動するはずですが?CSVファイルの正しい使い方は、「データ」→「テキストファイル」です。こちらなら普通に文字コードも指定できますけど?
ダブルクリックでCSV開く → 正しくない使い方ファイルからCSVで開く → 正しくない使い方データからテキストファイルとしてインポート → 正しい使い方
・・・選択肢がたくさんあって、正しい方法が一つしかないとかギャルゲーですか?
そもそも、ExcelでCSVを扱いやつも、CSVをExcelに関連付けしてしまうMicrosoftもどっちも悪い。ExcelでCSVファイルを操作してぶっ壊すやつが多すぎる。CSVはCSV専用のツールを使って操作するべき。
ファイルシステムから改変して欲しいファイル名の大文字小文字問題から始まってパス区切りがバックスラッシュ(日本だと¥とか意味不明)それこそレガシーシステムとしてDOS環境を仮想化して動かすくらいに隔離して欲しい
windows標準のファイラーはレガシーだと
C:\> copy con abcC:\> copy con ABCABC を上書きしますか? (Yes/No/All):
あれ?
コマンドプロンプトじゃなくて、もっとモダンな方法でやったとしても結果は同じだろ。NTFSは、大文字小文字を保存はするけど、区別はしない。
ところが、FILE_FLAG_POSIX_SEMANTICSするとか、fsutil.exe file queryCaseSensitiveInfo enableとかすると区別するんですよ。 [microsoft.com]
# よくあるのは、ファイル共有で出来ちゃうパターンね。
太古の昔からパス区切りは「/」でよくて、「\」も使えるってだけやで定期。
といいつつ、コマンドプロンプトとかPSとかでパスが補完される時は「\」が付いてくるんだよなあ。でも今の時代、「\」でも問題なくね?UNIX至上主義でもない限り、ほぼストレス無いやろ。
正規表現でパス扱う時に面倒臭くね?"/"もエスケープしなきゃいけないのは変わらないけど、"\"が連続するよりはマシかなと思ってる。\Q~\Eが使えないことも多いし。
自分の場合は、入力されたパスはあらかじめ \ を / に変換しちゃうからなあ。しかも可能ならjava.nio.Pathみたいにラップしちゃうし。あまり面倒に思った事ない。パスを正規表現でどうにかする用事も、あまり無かったしね。。
HTML Help WorkshopもSJISのHTMLしか渡せなかった気がする# doxygenでchmファイル生成する際に苦労した覚えが……
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家
隗より始めよ (スコア:4, すばらしい洞察)
まず、お前の所からやれ。
何で Shift_JIS でしかセーブできないツール残してるんだ(怒
Re: (スコア:0)
システムロケールの「ベータ:ワールドワイド言語サポートでUnicode UTF-8を使用」を有効にしたら、メモ帳でCP932/ANSIで保存したテキストファイルが盛大に文字化け。
既存のtxtを全てUTF-8で保存し直さない私が悪いのか、
txtをメモ帳なんかに関連付けしている私が悪いんだろうなぁ。
Re:隗より始めよ (スコア:2, 参考になる)
要注意な設定変更のようですね。
Windows 10の「ワールドワイド言語サポートで Unicode UTF-8 を使用」は要注意
https://srad.jp/submission/85086/ [srad.jp]
Re: (スコア:0)
非互換変更なんだからトラブル起きて当然では。
もともとBOMは互換性維持のための機能なんだし。
気になるのは、Microsoftがこの非互換変更をなし崩しにやろうとしている感があるところ。
ちゃんと移行のタイムスケジュールをアナウンスして計画的に対応できるようにしてほしい。
Re: (スコア:0)
ちゃんと移行のタイムスケジュールをアナウンスして計画的に対応できるようにしてほしい。
いやー、理想はやるべきだし、やってくれたら素晴らしいけど、大変だぜーこれは。
スケジュール切って移行せい!言っても未だにShift_JIS使ってるようなとこは大体ガン無視でしょ。
MSも持ってるツールがShift_JISがデフォルトかそれのみになってるやつを悉くUTF-8デフォルトにする訳でしょ。
保守放置されてるシステムとかツールとか問題を誰がケツ拭くのかとか、
結局部分的にShift_JIS生かすオプション付ける羽目になるとか、Xデー迎えても現実は完全移行には程遠いとかなりそうですよ。
Re: (スコア:0)
最低でも簡単なメニュー操作で word, excel, その他主要ツールに UTF-8 でイクスポートするとか、SJISをインポートするとか、そのあたりの整備から始めてくれないと、過去の遺産持っている人は誰も以降できない。
あとFATファイルシステムとか ZIP アーカイブの文字コードの切り換えとかも欲しい。
Re: (スコア:0)
何を言いたいのかわからんが、FATはSJISなんて使ってないぞ。
Re: (スコア:0)
FATファイルシステム上の日本語ファイル名はShift_JISじゃないかなぁ。
Re: (スコア:0)
FATのバージョン書かないと。
exFATはUnicodeですし。
Re: (スコア:0)
VFATのロングファイルネームはUTF-16。
OSでSJISに変換かましてるだけ。
Re: (スコア:0)
長いファイル名はUTF-16だけど、短いファイル名はOEM文字列(=ShiftJIS)のままじゃなかったけ?
Re: (スコア:0)
8.3形式はASCIIの一部のみ。
Re: (スコア:0)
FATっていったらFAT16のこと。
Re: (スコア:0)
そのオプションを有効にしたお前が悪い
https://twitter.com/unagix/status/1198150413003837440 [twitter.com]
そもそも最新のWindows 10のメモ帳ではそのオプションが有効かどうかに関わらず標準の保存形式がBOMなしUTF-8になっているはずだが
Re: (スコア:0)
具体的にどのツール?
cmd.exeや、こまごまとしたDOSコマンドは今更直してられないだろうから、もう仕方ないと思う。
(昔のCプログラムを正しくUTF-8対応させるのは大変すぎるし…。UNIX系プラットフォームでもすごく時間がかかった)
PowerShellならUTF-8問題ないので、なるべくPowerShell使う方向で対応でしょう。
それ以外のアプリはおおむね直ってると思う。
昔はSQL Server付属のsqlcmdがShift-JISしか読まなくてムキーとなった記憶があるが、今は改善されたっぽい。
Re:隗より始めよ (スコア:1)
cmd.exeならとうの昔にchcpで各種コードページに対応してるのだが。
Re: (スコア:0)
Windows 10になるまでchcp 65001は使い物にならなかったけどね。Console CPはA系関数のエンコーディング変換とかには影響しないし
Re:隗より始めよ (スコア:1)
ZipフォルダーがいつまでもシフトJISのファイル名で保存し続けて、シフトJISにない文字を含むファイル名を書庫に追加しようとするとエラーを吐く。展開の方はUTF-8に対応済みだしOneDriveの一括ダウンロード機能などで生成されるZipのファイル名もUTF-8だし未パッチの状態でUTF-8ファイル名の展開をサポートしないWindows 7はサポート終了したからいい加減対応してもらいたいのだが
Re: (スコア:0)
提供したUSBストレージ(32GB)には、内部ファイル名がUTF8のZIPファイルと、内部ファイル名がSJISのZIPファイルが入っています。
両方を正しいファイル名で解凍した上で、それがエクセル・ファイルがあった場合は CSV (文字コードは UTF-8 BOM無し) に変換し、他の解凍したファイルと一緒にして全てを提供したUSBストレージに追加して返してください。
・マイクロソフト標準ツール以外には使用できないものとします。
・作業途中でのレジストリ直接操作などは禁止とします。
・USBストレージに元から入っているファイルは消してはならないものとします。
・外字のみ文字化けを許容します。
Re: (スコア:0)
ExcelからCSVに変換が出来ないから無理かな。
あと、動かすOSが何かによる。
Re: (スコア:0)
EXCELはUTF8のCSV読み書きできるでしょ。
bomなんてPowerShellで付けたり外したりすりゃいいし
Re: (スコア:0)
>マイクロソフト標準ツール
とかいってる癖に、何勝手にOfficeインストールしてるんだ?
Re: (スコア:0)
でもよく考えたら、元のコメはなんで「標準ツール」って縛りを入れたんだろうね?
OSは、最初からバンドルされているソフトに捕らわれない、自由で活発なアプリケーションのエコシステムがあってナンボのモノなのに。
CentOSのミニマル版にはzipもunzipも入ってない。
Re: (スコア:0)
インストールしてませんよ。Officeは最初から入っているものです。
Re: (スコア:0)
Office は標準ツールで良いんじゃない? OS付属ツールとは言っていないんだし。
とことで UTF-8 の CSV の書き出して、どうやるの?
Re: (スコア:0)
業務的な使用を想定しているのでは?
フリーソフト含む標準外のインストールはNG、
レジストリいじるのもシステム破壊のリスクがあるからNGとか
Re: (スコア:0)
いや、できるはできるんだが…ただUTF8のCSVを開くと文字化けするので、データのインポートを使ったり(すると勝手に表のデザインが入ってくる)、BOMを追加してUTFだとわからせるとか、コンバータでSJISに直すとか、君はお茶の子さいさいでも、一般の人からみたらやっぱり裏技だろう?事務のおばちゃんに説明できるか?こんなやり方。
https://primarytext.jp/blog/1275 [primarytext.jp]
LibreOfficeでもCSVを開くときには文字コードはこれでいいのかって確認が入るようになっているのに。
Re: (スコア:0)
そもそも、ダブルクリックでCSV開くこと自体が害悪ですよ。
データが暗黙の型変換されてデータが壊れるリスクがあります。
しかも、データの件数とか並び順に影響されるから再現性が極悪。
マクロか、Accessでも使ってちゃんと加工した方がよろしいでは?
Re: (スコア:0)
ダブルクリックで開かなくても、ファイル、開くでも結果は同じだよ。
マイクロソフトがUTFを推進するのなら、ExcelがCSVのコードをSJISに決め打ちしているのはどういうことなんだってこと。マクロとかで解決してもそれは応急処置、はっきり言えば誤魔化しでしかない。標準の機能として搭載されているべきだと思わないか?
もう一度言うけどLibreOfficeでは開くときに文字コードを確認できるようになっているんだ。それだけのことがExcelにできないはずはないのになぜやらないのかってことなんだ。
Re: (スコア:0)
お使いのExcelのバージョンが幾つか知りませんが、ダブルクリックや履歴でなく、
ファイル→開くでファイルの種類がテキストファイル(CSV)だと、テキストファイルのインポートが起動するはずですが?
CSVファイルの正しい使い方は、「データ」→「テキストファイル」です。
こちらなら普通に文字コードも指定できますけど?
Re:隗より始めよ (スコア:1)
ダブルクリックでCSV開く → 正しくない使い方
ファイルからCSVで開く → 正しくない使い方
データからテキストファイルとしてインポート → 正しい使い方
・・・選択肢がたくさんあって、正しい方法が一つしかないとか
ギャルゲーですか?
Re: (スコア:0)
そもそも、ExcelでCSVを扱いやつも、CSVをExcelに関連付けしてしまうMicrosoftもどっちも悪い。
ExcelでCSVファイルを操作してぶっ壊すやつが多すぎる。
CSVはCSV専用のツールを使って操作するべき。
Re: (スコア:0)
ファイルシステムから改変して欲しい
ファイル名の大文字小文字問題から始まってパス区切りがバックスラッシュ(日本だと¥とか意味不明)
それこそレガシーシステムとしてDOS環境を仮想化して動かすくらいに隔離して欲しい
Re: (スコア:0)
君の使ってるレガシーなプログラムが大文字小文字を同一視してるだけだぞ
Re: (スコア:0)
windows標準のファイラーはレガシーだと
Re: (スコア:0)
Re: (スコア:0)
C:\> copy con abc
C:\> copy con ABC
ABC を上書きしますか? (Yes/No/All):
あれ?
Re: (スコア:0)
Re: (スコア:0)
コマンドプロンプトじゃなくて、もっとモダンな方法でやったとしても結果は同じだろ。
NTFSは、大文字小文字を保存はするけど、区別はしない。
Re: (スコア:0)
ところが、FILE_FLAG_POSIX_SEMANTICSするとか、fsutil.exe file queryCaseSensitiveInfo enableとかすると区別するんですよ。 [microsoft.com]
# よくあるのは、ファイル共有で出来ちゃうパターンね。
Re: (スコア:0)
太古の昔からパス区切りは「/」でよくて、「\」も使えるってだけやで定期。
といいつつ、コマンドプロンプトとかPSとかでパスが補完される時は「\」が付いてくるんだよなあ。
でも今の時代、「\」でも問題なくね?UNIX至上主義でもない限り、ほぼストレス無いやろ。
Re: (スコア:0)
正規表現でパス扱う時に面倒臭くね?
"/"もエスケープしなきゃいけないのは変わらないけど、
"\"が連続するよりはマシかなと思ってる。
\Q~\Eが使えないことも多いし。
Re: (スコア:0)
自分の場合は、入力されたパスはあらかじめ \ を / に変換しちゃうからなあ。
しかも可能ならjava.nio.Pathみたいにラップしちゃうし。
あまり面倒に思った事ない。
パスを正規表現でどうにかする用事も、あまり無かったしね。。
Re: (スコア:0)
HTML Help WorkshopもSJISのHTMLしか渡せなかった気がする
# doxygenでchmファイル生成する際に苦労した覚えが……