任何用于Java的RFC 2397数据URI解析器?

时间:2012-09-10 14:15:01

标签: java parsing data-uri

   dataurl    := "data:" [ mediatype ] [ ";base64" ] "," data
   mediatype  := [ type "/" subtype ] *( ";" parameter )
   data       := *urlchar
   parameter  := attribute "=" value

   value := token / quoted-string

根据来自RFC的这些BNF,将数据与mime类型分开的逗号实际上可以同时出现在mime类型和数据中,因此没有简单的方法(即reg ex)将URI分解为部分。因此需要一个完整的解析器。

我想知道是否有人知道Java中的任何数据URI库?我的Google搜索没有产生任何结果。

2 个答案:

答案 0 :(得分:4)

GitHub上有一个名为jDataUri的Java数据URI解析器实现。

免责声明:我是作者

答案 1 :(得分:0)

我最终不得不实现自己的解析器。 RFC提供了BNF,因此可以实现完整的词法分析器和语法分析器。但是,对于这个简单的情况,我使用了一个简单的扫描+堆栈机制来跟踪引用的字符串并找到分隔逗号。 javax.activation的MimeType用于实际的Mime解析。