0

使用可能なすべてのドライブのリストをテキスト ファイルに書き込むバッチ ファイルと、そのテキスト ファイルの内容を読み取る別のバッチ ファイルがあります (最初の行をスキップします)。

ドライブ リストのコードは次のとおりです。

wmic logicaldisk get name> "abc.txt

テキスト ファイルの読み取りに使用されるコードは次のとおりです。

FOR /F "skip=1" %%m IN (abc.txt) DO (echo %%m)

リーダー バッチは、ファイルが手動で作成された場合にのみ機能します。

いくつかの解決策が必要です。助けてください!

4

2 に答える 2

0

問題は、wmic がファイルの先頭にある FF FE で示される UTF-16 形式を出力していることです(Hex Dump Tool)。コマンド FOR は Unicode 形式を認識できず、何も見つかりません。

abc.txt をプレーン テキストに変換するには、中間の手順が必要です。これは、ファイルをプレーンテキスト形式で手動で作成すると、期待どおりに機能する理由を説明しています。変換を行う 2 番目のバッチ ファイルに以下を追加します。

    TYPE abc.txt > abcplain.txt
    FOR /F "skip=1" %%m IN (abcplain.txt) DO (echo %%m)
于 2013-09-11T00:42:00.820 に答える