Last active
April 2, 2017 18:17
-
-
Save ormanli/9020129 to your computer and use it in GitHub Desktop.
Script for converting Non ASCII caharacters to ASCII in JAXB classes for Turkish
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.io.BufferedWriter; | |
import java.io.File; | |
import java.io.FileInputStream; | |
import java.io.FileOutputStream; | |
import java.io.OutputStreamWriter; | |
import java.io.Writer; | |
public class NonASCIItoASCII { | |
public static void main(String[] args) throws Exception { | |
generateNewClass("path/to/file"); | |
} | |
public static void generateNewClass(String path) throws Exception { | |
File file = new File(path); | |
FileInputStream fis = new FileInputStream(file); | |
byte[] data = new byte[(int) file.length()]; | |
fis.read(data); | |
fis.close(); | |
String in = new String(data, "UTF-8"); | |
in = in.replaceAll("Ş", "S"); | |
in = in.replaceAll("ş", "s"); | |
in = in.replaceAll("Ö", "O"); | |
in = in.replaceAll("ö", "o"); | |
in = in.replaceAll("Ğ", "G"); | |
in = in.replaceAll("ğ", "g"); | |
in = in.replaceAll("Ü", "U"); | |
in = in.replaceAll("ü", "u"); | |
in = in.replaceAll("Ç", "C"); | |
in = in.replaceAll("ç", "c"); | |
in = in.replaceAll("İ", "I"); | |
in = in.replaceAll("ı", "i"); | |
String[] fr = in.split("(@)"); | |
StringBuilder result = new StringBuilder(); | |
for (int i = 0; i < fr.length; i++) { | |
if (fr[i].contains("propOrder")) { | |
fr[i] = fr[i].replaceAll("\\\\u00fc", "u"); | |
fr[i] = fr[i].replaceAll("\\\\u00dc", "U"); | |
fr[i] = fr[i].replaceAll("\\\\u00d6", "O"); | |
fr[i] = fr[i].replaceAll("\\\\u00f6", "o"); | |
fr[i] = fr[i].replaceAll("\\\\u00c7", "C"); | |
fr[i] = fr[i].replaceAll("\\\\u00e7", "c"); | |
fr[i] = fr[i].replaceAll("\\\\u0130", "I"); | |
fr[i] = fr[i].replaceAll("\\\\u0131", "i"); | |
fr[i] = fr[i].replaceAll("\\\\u011f", "g"); | |
fr[i] = fr[i].replaceAll("\\\\u011e", "G"); | |
fr[i] = fr[i].replaceAll("\\\\u015e", "S"); | |
fr[i] = fr[i].replaceAll("\\\\u015f", "s"); | |
} | |
result.append(fr[i]); | |
if (i != fr.length - 1) { | |
result.append("@"); | |
} | |
} | |
in = result.toString(); | |
File file2; | |
file2 = new File("generatedClass.txt"); | |
Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file2), "UTF8")); | |
if (!file2.exists()) { | |
file2.createNewFile(); | |
} | |
out.write(in); | |
out.flush(); | |
out.close(); | |
System.out.println("Done"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment