JMP 16:用于打开文件夹中最新的 .csv 文件的脚本。我一直在使用 path = Pick File();命令手动选择要导入数据表的文件。 您能否编写命令以将文件夹中最新的 .csv 文件导入数据表? 这些文件中只有一个工作表。
数据表脚本回复:JMP 16:用于打开文件夹中最新的 .csv 文件的脚本。您是否在 Help > Scripting Index 中搜索 Functions 并检查了 File 函数组?

您可以基于 Creation Date() 或 Last Modification Date() 函数编写脚本。
回复:JMP 16:用于打开文件夹中最新的 .csv 文件的脚本。马克:谢谢你的回复。 我不知道帮助下的脚本索引,所以这对前进有很大帮助。 我参考的是 JMP15 脚本指南的 pdf 版本,它不适合搜索。 文件名的一个问题是它在名称末尾包含时间戳,因此它是动态的。 格式为 FileName_YYYYMMDDHHMM.csv。 我将暂时坚持使用 PickFile 并试验 LastModificationDate 函数。 再次感谢。
回复:JMP 16:用于打开文件夹中最新的 .csv 文件的脚本。如果要忽略时间戳,可以将文件名与 Contains() 函数匹配。
回复:JMP 16:用于打开文件夹中最新的 .csv 文件的脚本。我只是碰巧过去有这种需求,幸运的是保存了一个脚本以防万一......
您需要更改第 2 行和第 3 行的字符串。
Names Default To Here( 1 );
searchext = "jmp"; //extension to look for
searchfolder = "$DESKTOP"; //place to search
lstExtensions = {};
lstDates = {};
lstFiles = Files In Directory( searchfolder );
For Each( {i, j}, lstFiles,
lstExtensions[j] = Char( Right( i, 3 ) );
lstDates[j] = As Date( Creation Date( searchfolder || "/" || Char( i ) ) );
);
dt = New Table( "Files",
New Column( "Name", character, set values( lstFiles ) ),
New Column( "ext", character, set values( lstExtensions ) ),
New Column( "Date", numeric, set values( Matrix( lstDates ) ) )
);
dt << Select where( :ext != searchext );
dt << Delete Rows;
newest = Col Min( :Date );
newfile = searchfolder || "/" || :Name[dt << Get Rows Where( :Date == newest )][1];
Close( dt, no save );
Open( newfile );