以下代码为我检索 URL 内容并将其保存到文件中:
URI obj_uri = new URI(uri);
URLConnection connection = obj_uri.toURL().openConnection();
connection.connect();
byte[] buffer = new byte[1024];
String filename = "temp";
try (InputStream in = connection.getInputStream(); FileOutputStream writer = new FileOutputStream( new File(filename) )) {
int len;
while ( (len = in.read(buffer)) != -1) {
writer.write( buffer, 0, len );
}
}
return filename;
我的问题是,当此 URI 具有不同的符号时,例如“http://dbpedia.org/resource/Brasília”,则无法检索内容。 DBpedia 使用的 URL 编码是 UTF-8,即使使用 URLEncoder.encode( url, "UTF-8")
我的代码也无法工作。但我的代码不会生成错误或异常,生成的文件(“temp”)以任何信息结尾(除了“”和“”)。
那么,如果 URI 正确并且即使使用其符号也可以访问,为什么我无法检索其内容并将其保存到文件中?
感谢您的帮助!
最佳答案
如果其他方法都不起作用,也可以尝试这些。
关于java - 在 Java 中访问带有重音符号的 URL 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17667500/