У меня проблемы с простой загрузкой XML-файла с URL-адреса. Я уже некоторое время оглядывал этот сайт и следовал большинству примеров того, как загрузить файл с правильной кодировкой, насколько я могу судить, однако я должен делать что-то не так, потому что я не получаю желаемый результат. На данный момент мой код выглядит следующим образом.
Catalog cat = (Catalog)obj;
String datasetURL = cat.getID()+"@datasets";
URL dataURL = new URL(datasetURL);
InputStream iStream = dataURL.openStream();
int count = iStream.available();
char content[] = new char[count];
InputStreamReader isReader = new InputStreamReader(iStream,"UTF-8");
BufferedReader buffRead = new BufferedReader(isReader);
buffRead.read(content, 0, count);
String contentAsString = new String(content, 0,count);
FileWriter fstream = new FileWriter("src/main/resources/datasets.xml");
BufferedWriter out = new BufferedWriter(fstream);
out.write(contentAsString);
out.close();
Кажется, это работает правильно, однако в xml-файле отображаются такие символы, как:
Ksǵ p и т. Д. В Eclipse и отображается как «½¿Ks¿µïK½ï¿½ï¿½ÂŽp�» в блокноте ++. Я не знаю, что делать, потому что я уже добавил кодировку в InputStreamReader, поэтому я подумал, что это решит эту проблему.
Также я не слишком знаком с RDF, но в файле xml есть тег RDF. Будет ли это иметь какое-либо значение?
<?xml version='1.0' encoding='UTF-8'?>
<r:RDF xmlns:s="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#" xmlns:r="http://www.w3.org/1999/02/22-rdf-syntax-ns#" etc..
Большое спасибо.