Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
非ascii字符的java xml解析不正确_Java_Xml_Parsing_Applet_Non Ascii Characters - Fatal编程技术网

非ascii字符的java xml解析不正确

非ascii字符的java xml解析不正确,java,xml,parsing,applet,non-ascii-characters,Java,Xml,Parsing,Applet,Non Ascii Characters,我正在使用java小程序浏览远程服务器(ftp/cifs)上的文件/文件夹。 问题是,如果远程服务器上的文件夹以非ascii字符命名(如日语或中文),小程序将无法启动。 我已经追溯到了这个问题,它似乎是由服务器响应中对非ascii字符串的错误解析引起的。以下是来自服务器的xml响应片段 <?xml version="1.0" encoding="utf-8" ?><a:multistatus xmlns:b="urn:uuid:/" xmlns:c="xml:" xmlns:a

我正在使用java小程序浏览远程服务器(ftp/cifs)上的文件/文件夹。 问题是,如果远程服务器上的文件夹以非ascii字符命名(如日语或中文),小程序将无法启动。 我已经追溯到了这个问题,它似乎是由服务器响应中对非ascii字符串的错误解析引起的。以下是来自服务器的xml响应片段

<?xml version="1.0" encoding="utf-8" ?><a:multistatus xmlns:b="urn:uuid:/" xmlns:c="xml:" xmlns:a="DAV:">
<a:response><a:href>https://xx.xx.xx.xx/folder/äèä¸?能正常工作</a:href><a:propstat><a:status>HTTP/1.1 200 OK</a:status>

https://xx.xx.xx.xx/folder/HTTP/1.1200ok

服务器的字符集编码请求为utf-8,如上所述。看起来像垃圾的字符串是我试图使用applet查看的远程webfolder,该文件夹实际上是命名的不能正常工作. 由于两者不相等(实际文件夹名称和xml中的名称),java xml解析在尝试启动小程序时抛出错误。请建议可以采取哪些措施来解决此问题。另外,我没有使用SAX解析器,而是使用XML解析器,然后创建一个DOM对象,您发布的XML似乎包含垃圾字符。我的意思是,这些unicode字符在创建过程中被破坏了。因此,首先要检查的应该是确保使用正确的API变量,该变量以字符集作为参数,并在这些位置使用UTF-8作为参数。在服务器和客户端se上,只需仔细检查API。例如,如果您在任何地方创建InputStreamReader,请确保您正在使用InputStreamReader(InputStream in、Charset cs)等