4字节UTF-8序列的字节2无效

时间:2017-03-11 21:38:15

标签: java html model-view-controller playframework playframework-2.5

我尝试实现一个Web界面,您可以在其中上传xml文件,稍后将对其进行分析以从中创建数据库。我正在使用play framework 2.5.x

所以我通过上传获取文件:



    <form action="target" method="post" enctype="multipart/form-data">
      <input type="file" name="xml" accept="text/xml"/> 
      <button type="submit"> Los! </input>
    </form>
&#13;
&#13;
&#13;

在我的控制器中,我从请求中获取文件,然后尝试将其解析为Document变量(org.w3c.dom.Document),如下所示:

MultipartFormData<File> body = request().body().asMultipartFormData();
        FilePart<File> part = body.getFile("xml");
        File f = part.getFile();

        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        Document dom = dBuilder.parse(f);

即使我尝试上传的XML文件有

encoding="UTF-8"

设置,我收到错误消息:

Invalid byte 2 of 4-byte UTF-8 sequence.

有没有人知道为什么会这样,以及我如何解决这个问题(或者我的方法是否愚蠢)?

由于

0 个答案:

没有答案