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

   value := token / quoted-string

これらの RFC の BNF によると、データと MIME タイプを区切るコンマは、実際には MIME タイプとデータの両方に表示される可能性があるため、URI を部分に分割する簡単な方法 (reg ex) はありません。したがって、完全なパーサーが必要です。

JavaのデータURIライブラリを知っている人はいますか? 私のGoogle検索では何も得られませんでした。

4

2 に答える 2

0

結局、独自のパーサーを実装する必要がありました。RFC は BNF を提供したため、完全なレクサーと構文アナライザーを実装できます。ただし、この単純なケースでは、単純なスキャン + スタック メカニズムを使用して、引用符で囲まれた文字列をトレースし、区切りのコンマを見つけました。javax.activation の MimeType は、実際の Mime 解析に使用されます。

于 2012-09-13T20:44:28.927 に答える