0

我正在寻找一种可以在 Java VM 上运行的脚本语言,它可以作为一种简单的脚本语言,用户可以使用它来指定如何从音乐元数据构造文件名。请参阅我之前的相关文章将一种简单的表达式语言放入推荐使用 Javascript 的 java 中,我使用它并且它有效:

即如果我有一个包含以下元数据的文件:

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 语法对于普通用户来说太难了。

任何人都可以推荐一种替代脚本语言,我可以插件,它给我类似的功能但更简单的语法。例如,如果我可以改用这种语法就好了

if(albumartist,albumartist-)else if(artist,artist-)(album,album-)(trackno,trackno)title

并得到相同的结果

4

2 回答 2

0

我建议您考虑使用模板语言而不是脚本语言,例如Freemarker

无论您选择哪种路径,都要注意接受用户提供的输入并执行它的安全隐患。

于 2012-04-13T14:31:45.650 回答
-1

也许使用 JSON 是解决问题的好方法。在您给出的示例中,JSON 如下所示:

{
  "albumartist": "U2", 
  "album": "Boy", 
  "trackno": 2, 
  "title": "Twilight"     
}

有许多 JSON 到 Java 解析器可用。我使用 Google 的 GSON - http://code.google.com/p/google-gson/

有关 JSON 的其他解析器和一般信息,请访问http://www.json.org/

于 2012-04-14T00:38:33.530 回答