我怎样才能让所有的文件名相同的长度加空格呢?

问题描述 投票:1回答:2

我想使文件名+空格= 211个字符,但问题是,如果文件名字符= 30

我需要181位

而如果文件名字符= 80

我需要131位

我曾尝试先进更名

标签选项+空格。

<Name>                                                                                                                                                                                                                

..甚至这个脚本在脚本节

var maxLength = 25;
var name = item.name;
var date = app.parseTags("<Year Modified><Month Modified><Day Modified>");
var numSpaces = maxLength - name.length - date.length;
var spaces = "";
for (i = 0; i < numSpaces; i++) spaces += " ";
return name + spaces + date; 

但它给我这个错误name is not defined in the line 3

javascript namespaces character filenames batch-rename
2个回答
0
投票

采用先进的更名,工程脚本

var maxLength = 222;
var name = item.name;
var date = app.parseTags("<Year Modified><Month Modified><Day Modified>");
var numSpaces = maxLength - name.length - date.length;
var spaces = "";
for (i = 0; i < numSpaces; i++) spaces += " ";
return name + spaces + date;

信用 David Lee from advanced Renamer forms


0
投票

你可以使用String#padEnd(),以空格添加到您的文件名字符串的结尾,这样生成的字符串有一个由您指定的最小长度。

考虑下面的代码片段,直到其中fileNameA.padEnd(211)返回与相同的前导字符fileNameA一个新的字符串,但空格填充的字符串,使得字符串长度为211的剩余部分:

const fileNameA = 'your file name';
const fileNameB = 'some other big file name';

const paddedFileNameA = fileNameA.padEnd(211);
const paddedFileNameB = fileNameB.padEnd(211);

console.log(`
paddedFileNameA:
"${paddedFileNameA}"
length of paddedFileNameA: ${paddedFileNameA.length}
`)
console.log(`
paddedFileNameB:
"${paddedFileNameB}"
length of paddedFileNameB: ${paddedFileNameB.length}
`)

Update

我不熟悉高级更名设定的脚本功能,但是您可能会发现这对你的作品:

/*
Set length to 211
*/
var maxLength = 211; 
var name = item ? item.name : '';
var date = app.parseTags("<Year Modified><Month Modified><Day Modified>");

/*
Ensure variables are not undefined or null
*/
if(!name) {
    name = '';
}
if(!date) {
    date = '';
}

/*
Construct result string
*/
var result = name;
for (i = 0; i < (maxLength - (name.length + date.length)); i++) {
    result += ' ';
}
result += date;

return result;
© www.soinside.com 2019 - 2024. All rights reserved.