У меня проблема с кодировкой файлов. У меня есть метод, который экспортирует мою БД в XML в формате, который я создал. Проблема в том, что файл создается с помощью ANSI-кодировки, и мне нужно Кодировка UTF-8 (некоторые испанские символы не отображаются на ANSI).Как создать файл utf8 из объекта stringbuilder в Java
XML-файл создается из объекта StringBuilder: Я записываю данные из своей БД в этот объект StringBuilder и когда я скопировал все данные, которые я создаю.
Любая помощь с благодарностью принимается. Спасибо в advace.
Edit: Это часть моего источника: XMLBuilder класс:
...
public XmlBuilder() throws IOException {
this.sb = new StringBuilder();
}
...
public String xmlBuild() throws IOException{
this.sb.append(CLOSE_DB);
return this.sb.toString();
}
...
Класс обслуживания, где я генерировать файл XML:
XmlBuilder xml = new XmlBuilder();
... (adding to xml)...
xmlString = xml.build();
file = createXml(xmlString);
...
createXml:
public File createXml(String textToFile) {
File folder = new File("xml/exported/");
if (!folder.exists()) {
folder.mkdirs();
}
file = new File("xml/exported/exportedData.xml");
try (FileOutputStream fop = new FileOutputStream(file)) {
// if file doesn't exists, then create it
if (!file.exists()) {
file.createNewFile();
}
//if file exists, then delete it and create it
else {
file.delete();
file.createNewFile();
}
// get the content in bytes
byte[] contentInBytes = textToFile.getBytes();
fop.write(contentInBytes);
fop.flush();
fop.close();
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
}
return file;
}
Можете ли вы показать нам код, в котором вы пишете файл? Обычно вы можете предоставить кодировку в качестве дополнительного параметра. – Keppil
Спасибо за ваш ответ @Keppil. Я только что редактировал свой вопрос с исходным кодом. – Alberto
Попробуйте ответить @ Keith ниже, я думаю, что он должен работать. – Keppil