Search in sources :

Example 1 with CheckTextFiles

use of org.h2.build.code.CheckTextFiles in project h2database by h2database.

the class PropertiesToUTF8 method convert.

private static void convert(String source) throws Exception {
    for (File f : new File(source).listFiles()) {
        if (!f.getName().endsWith(".properties")) {
            continue;
        }
        FileInputStream in = new FileInputStream(f);
        InputStreamReader r = new InputStreamReader(in, StandardCharsets.UTF_8);
        String s = IOUtils.readStringAndClose(r, -1);
        in.close();
        String name = f.getName();
        String utf8, html;
        if (name.startsWith("utf8")) {
            utf8 = HtmlConverter.convertHtmlToString(s);
            html = HtmlConverter.convertStringToHtml(utf8);
            RandomAccessFile out = new RandomAccessFile("_" + name.substring(4), "rw");
            out.write(html.getBytes());
            out.setLength(out.getFilePointer());
            out.close();
        } else {
            new CheckTextFiles().checkOrFixFile(f, false, false);
            html = s;
            utf8 = HtmlConverter.convertHtmlToString(html);
            // s = unescapeHtml(s);
            utf8 = StringUtils.javaDecode(utf8);
            FileOutputStream out = new FileOutputStream("_utf8" + f.getName());
            OutputStreamWriter w = new OutputStreamWriter(out, StandardCharsets.UTF_8);
            w.write(utf8);
            w.close();
            out.close();
        }
        String java = StringUtils.javaEncode(utf8);
        java = StringUtils.replaceAll(java, "\\r", "\r");
        java = StringUtils.replaceAll(java, "\\n", "\n");
        RandomAccessFile out = new RandomAccessFile("_java." + name, "rw");
        out.write(java.getBytes());
        out.setLength(out.getFilePointer());
        out.close();
    }
}
Also used : InputStreamReader(java.io.InputStreamReader) RandomAccessFile(java.io.RandomAccessFile) CheckTextFiles(org.h2.build.code.CheckTextFiles) FileOutputStream(java.io.FileOutputStream) OutputStreamWriter(java.io.OutputStreamWriter) RandomAccessFile(java.io.RandomAccessFile) File(java.io.File) FileInputStream(java.io.FileInputStream)

Aggregations

File (java.io.File)1 FileInputStream (java.io.FileInputStream)1 FileOutputStream (java.io.FileOutputStream)1 InputStreamReader (java.io.InputStreamReader)1 OutputStreamWriter (java.io.OutputStreamWriter)1 RandomAccessFile (java.io.RandomAccessFile)1 CheckTextFiles (org.h2.build.code.CheckTextFiles)1