私は私の.csvファイルからすべてのデータを抽出して、それをフォルダーの中に入れたいのです。問題は私が私のコードを実行するたびに、私はこのコード行を使用するため、それは毎回異なるフォルダを生成します:
newDir = filepath||Substitute(MDYHMS(Today()), "/", "-", ":", ".");
問題は、毎回新しいフォルダーを生成すると同時にJMPスクリプトを使用して以前に作成したフォルダーを削除することができるということです。最新のフォルダしか必要ないので、スクリプトを実行するたびに自分のディレクトリをフォルダでいっぱいにしたくはありません。以下は私のコードの一部です。どうもありがとうございます!
dt.file = Pick File();
//Get csv file directory path
prefilepath=substr(dt.file,1,length(dt.file)-length(word(-1,dt.file,"\/"))-1);
If( Host is( Mac ),
filepath="/"||prefilepath,
filepath = Convert File Path( prefilepath, Windows )
);
Show(filepath);
//Create new directory to save all the extracted .csv files
newDir = filepath||Substitute(MDYHMS(Today()), "/", "-", ":", ".");
CreateDirectory(newDir);
Show(newDir);
注意してください、私はこのようなコードを書くとき、少なくとも一度間違ったディレクトリを削除することに成功しました。
ディレクトリ名を返すオプションを指定してfilesInDirectory(...)を使用します。日付のフォーマットが適切にソートされていることを確認してください(たとえば、YYYYMMDD、ただしDDMMYYYYはしません)。FilesInDirectoryからリストをソートし、最小のものを選びます。あなたのパターンにマッチ 。私はあなたがチェックできるファイル名に追加のテキストを追加することをお勧めします。
files / DeleteTomorrow-2019-04-19。CSV
それは、他の誰かがコードを保守している1年後のミスを防ぐのに役立ちます。
いくつかのバージョンを保持したり、何かがおかしいと思われる場合にプロンプトを表示するなど、さまざまなバリエーションが考えられます。