WindowsのコマンドプロンプトでUnicodeを扱おうとして挫折した。

投稿日:2017-02-04

WindowsのコマンドプロンプトでUnicodeのファイル名を扱うためのバッチファイルをどうたらこうたら。
http://daily-misc.blogspot.jp/2014/12/windowsunicode.html

読んでは見たけど・・・BOMありとかBOMなしとか途中で理解するのをヤメたw

とりあえず、求める作業が許すなら、Unicode対応のファイラーとか使ったほうが早い。

 

といいつつも、実際問題、他人から受け取るファイルにはUnicode文字の含まれたファイル名が混在していたりすることもあるわけで、避けては通れない問題。

dir /b > FileName.txt

こんなコマンドでファイル名を出力すると、Unicodeの部分だけ文字化けというか、%46%・・・って感じで正しく表示されない。
結果的に、バッチファイルで一括処理させたい時に、これらのファイルが処理できないっていうね。

今の所の個人的な解決方法としては、コマンドプロンプトのrenameコマンドを使うこと。

特に多数の連番ファイルに有効かな。

aaaaaaaaaa001
aaaaaaaaaa002
aaaaaaaaaa003
aaaaaaaaaa004
aaaaaaaaaa005
:
※ここでは、「a」はUnicodeとしてくださいw

こんな感じでUnicodeが使われているファイル名を1から順にファイル名の修正をしたい場合・・・
知らない人だと、バッチファイルが使えないので、ファイルを1個ずつ右クリック⇨名前の変更・・・っていう作業を繰り返すことになる訳で(^ω^)

いや、知らない人だと、そもそもファイル名を修正しようとすらしないかな?

ただ、使用するソフトによっては、そもそもファイルが開けなかったりするので、対処法を知っておいて損はない。
対処法って言っても、ファイル名を修正するだけなんだけど・・・

ただ、数が多い場合、このままだと、ファイル名のリネームソフトなんかも使えないままなので、なんとかするために、試行錯誤した結果、どのWinwods環境でも使えるコマンドプロンプトでなんとかする方法にたどり着いた。

ren "aaaaaaaaaa"* "(file)"*

※(file)・・・まとめて変更したいファイル名。

で、

(file)001
(file)002
(file)003
(file)004
(file)005
:

ここまで来たら、適当なリネームソフトで一括変換するなりなんなりと。

 







-開発メモ
-,


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Excelのシートが表示されなくなった時の対処法

Excelのシートが表示されなくなった! なんか、少しだけいつものExcelの画面と違いませんか? 人によっては、見慣れた画面かもしれませんが、左下にあるべきものがありません・・・ ちなみに、シートを …

続) 何度だって引っかかるORACLEのエラー・・・。ORA-01008:バインドされていない変数があります。

この土日は休日出勤でした・・・ そして、昨日・・・新しい現象が発生しました。 日本の中心付近で仕様変更と闘うSE日記日本の中心付近で仕様変更と闘うSE日記http://ht-jp.net/blog/p …

なぜ、エラーが発生する? VirtualBoxでのUbuntu Linuxの起動に再チャレンジ。

前回、会社で遊べる勉強できる環境としてUbuntu Linuxを導入しようと画策していました。 前回は、あえなく断念・・・ 日本の中心付近で仕様変更と闘うSE日記VMWareがだめだったから、Virt …

[ORACLE]最初の有効値を返すCOALESCE・・・読み方分からねぇw

知らなかったら、多分CASEとかで判定してた。 まぁ、人の書いたSQLは勉強になるよねって話・・・じゃないなw 事の発端は、今のプロジェクトで別の人が作った画面の修正をやることになったこと。 その人は …

DLLのプロパティのブロック解除をして、ダウンロードしたプログラムを起動出来るようにする。ダウンロードしたプログラムが実行できない時の対処法。

よくありますよね・・・ 予期せぬエラーってなんだよ(`・∀・´) 特にお客さんの目の前で「デンッ!!」っていうエラー音と共に表示された時の微妙な空気感がたまりません (╹◡╹) (^ω^) :(;゙゚ …


カテゴリー