JavaScriptforJava的替代插件,为用户指定掩码提供了一种方法
我正在寻找一种可以在Java虚拟机上运行的脚本语言,它可以作为一种简单的脚本语言,用户可以使用它来指定如何从音乐元数据构造文件名。请参阅我之前的相关文章,其中推荐了Javascript,我使用它,它可以工作: i、 e如果我有一个包含以下元数据的文件:JavaScriptforJava的替代插件,为用户指定掩码提供了一种方法,java,Java,我正在寻找一种可以在Java虚拟机上运行的脚本语言,它可以作为一种简单的脚本语言,用户可以使用它来指定如何从音乐元数据构造文件名。请参阅我之前的相关文章,其中推荐了Javascript,我使用它,它可以工作: i、 e如果我有一个包含以下元数据的文件: albumartist=U2 album=Boy trackno=02 title=Twilight 并应用此javascript掩码: (albumartist.length>0 ? albumartist +'-' :(artist
albumartist=U2
album=Boy
trackno=02
title=Twilight
并应用此javascript掩码:
(albumartist.length>0 ? albumartist +'-' :(artist.length>0 ? artist + '-' : ' ')) + (album.length>0 ? album + '-' :'') + (trackno.length>0 ? trackno + '-' :'') + title
它将输出
U2-男孩-02-暮光之城
这很好
但问题是Javascript语法对于普通用户来说太难了
有谁能推荐一种替代的脚本语言I Can插件,它给了我simailar功能,但语法更简单。例如,如果我可以使用这种语法,那就太好了
if(albumartist,albumartist-)else if(artist,artist-)(album,album-)(trackno,trackno)title
并得到相同的结果,而不是使用脚本语言,我建议您考虑使用模板语言,如
无论您选择哪种路径,都要注意接受用户提供的输入并执行它所带来的安全隐患。也许使用JSON将是解决问题的好方法。在您给出的示例中,JSON如下所示:
{
"albumartist": "U2",
"album": "Boy",
"trackno": 2,
"title": "Twilight"
}
有许多JSON到Java解析器可用。我使用谷歌的GSON-
有关JSON的其他解析器和一般信息,请转到Hi,我想您误解了我希望用户输入可应用于某些元数据的掩码的问题,JSON对此没有帮助对不起,您是对的。我没有仔细阅读这个问题。不幸的是,除了编写您自己的简单脚本语言解析器之外,我没有其他建议,这其实并不难。我希望解析器理解if/else之类的结构,并具有substring和uppercase之类的函数。在我看来,这太难了。事实上,在我开始使用Javascript之前,我确实有自己的解析器,我不喜欢重新发明这个轮子,所以我想我必须坚持使用Javascript,除非出现其他问题