我有一堆从 api 下载的具有指定名称的照片。 但我想将它们重命名为全名,而不是使用短名称。 有没有办法用脚本来做到这一点,我不想手动执行,因为有太多。也许是这样的事情?
$.each(priceData.result, function (index, item) {
$.each(allCoinData.result, function (allCoinIndex, allCoinItem) {
if (allCoinItem.Currency == item.MarketName.substr(4) && item.MarketName.substr(0, 4) == 'BTC-')
change src'assets/media/Bittrex/"+ allCoinItem.Currency +".png' to src'assets/media/Bittrex/"+ allCoinItem.CurrencyLong +".png'
有什么可能吗? 我还可以创建一个需要更改的照片数组以及需要更改的名称数组。
最佳答案
您可以使用 jQuery 通过源获取图像并更改它:
$.each(priceData.result, function (index, item) {
$.each(allCoinData.result, function (allCoinIndex, allCoinItem) {
if (allCoinItem.Currency == item.MarketName.substr(4) && item.MarketName.substr(0, 4) == 'BTC-')
$("img[src='assets/media/Bittrex/"+ allCoinItem.Currency +".png']")
.attr("src","assets/media/Bittrex/"+ allCoinItem.CurrencyLong +".png");
编辑
对于更改 Windows 中实际文件名的每个请求,鉴于您所说的可以创建的数组,您可以使用此脚本。
var fso = WScript.CreateObject("Scripting.FileSystemObject");
var srcFiles =["fn.js"]; // array of source file names
var destFiles =["fn-out.js"]; // array of source file names
var CurDir = fso.GetFolder(".");
var Files = CurDir.Files;
for(var i=0;i<srcFiles.length;i++)
{
if (fso.FileExists(srcFiles[i]))
{
fso.CopyFile(srcFiles[i],destFiles[i])
}
}
您需要将该代码保存到文件所在目录中的文件中,并使用 .js
扩展名,例如 fn.js
。然后,您需要在该目录中打开 Windows 命令提示符,方法是按住 Shift 键并右键单击该目录中的空白区域,然后选择在此处打开命令窗口。
在命令窗口中输入命令cscript [filename]
,其中[filename]
是您保存上述脚本的文件的名称,然后按回车键。
例如:
cscript fn.js
当程序完成时,srcFiles 中命名的所有文件都将被复制到 destFiles。
关于javascript - 有没有办法改变文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44859875/