В большинстве случаев достаточно простой замены текста.
Path path = Paths.get("general.xml");
byte[] data = Files.readAllBytes(path);
String xml = new String(data, StandardCharsets.UTF_8);
xml = Pattern.compile("(</?[-\\w]+)")
.matcher(xml)
.replaceAll(mr -> mr.group().toUpperCase());
data = xml.getBytes(StandardCharsets.UTF_8);
Files.write(path, data);
Для Java 8 и старше, которые не имеют этой версии replaceAll:
Matcher m = Pattern.compile("(</?[-\\w]+)")
.matcher(xml);
StringBuffer sb = new StringBuffer();
while (m.find()) {
m.appendReplacement(sb, m.group().toUpperCase());
}
m.appendTail(sb);
xml = sb.toString();