日本語プログラミング言語なでしこの公式掲示板

なでしこ1 質問

トップ 新規 検索

2022-07-25 14:41:25

Re④:ファイル名と同じ名前のフォルダを複数作成したい

tiara★ さん

雪乃☆雫 さん

表題の件だけでなく、ファイル移動、そしてフォルダの中に更にフォルダ作成について、
詳しく記載頂きまして、ありがとうございました。

手作業で行う手間がなくなり、一瞬で希望通りの処理ができました。

いつも、分かりやすくお返事頂き、勉強になります。

ありがとうございました。

あっ、ファイルを移動するなら、フォルダは先に作らなくても大丈夫ですよ~。
ファイル移動は、移動先のフォルダが存在しなければ作成されます。
そして、ファイル移動の引数は、A,Bともにフォルダではなくパス付きのファイル名なんです。
なので、引数Aは、対象フォルダではなく、「{対象フォルダ}{対象}」としなきゃなりません。(この反復の「対象」には、ファイル名(AAAAAAAABxxxxxx.xlsとか)が入っていますよね)
そして引数Bは、「対象の9から3文字抜き出し」が新しく作られる移動先のフォルダ名となるので、「{対象フォルダ}{対象の9から3文字抜き出し}\{対象}」ということになります。

次に「フォルダ作成」ですが、引数は作成したいフォルダのパスなので、「OLD」とゆう名前のフォルダを作りたいよ!ってことならば、「OLD」とゆう文字列を与えなければなりません。文字列なので、「」で括ります。
前の、(対象の9から3文字抜き出し)のフォルダ作成。 の場合は、文字列ではなく命令の返り値を与えているので「」はいりません。そして()で括っているのは見やすさと念のため?でした。
そして、フォルダ作成でフォルダが作成されるのは作業フォルダ(カレントディレクトリ)です。
先に作業フォルダを対象フォルダ({デスクトップ}test\)にして、BやCやDのフォルダを作っているので、単に「OLD」のフォルダ作成、とやるとOLDフォルダも対象フォルダに作られちゃいます。
新しくつくられたBやCやDそれぞれの中に作りたいので、そのパスも指定しなきゃなりません。
で、こんなかんじですかねー?
#-------------------------------------------------------  
  新フォルダ=対象の9から3文字抜き出し。
  「{対象フォルダ}{対象}」から「{対象フォルダ}{新フォルダ}\{対象}」へファイル移動。
  「{新フォルダ}\OLD」のフォルダ作成。
#-------------------------------------------------------  



(編集パスワード送信)

子記事

親記事 (No.1404)
返信した記事(元) (No.1408)

この内容(No.1423)に返信

この内容(No.1423)をダウンロード

この内容(No.1423)のテキスト表示





www.eznavi.net