Index: forgon-core/src/main/java/com/forgon/dataupdater/service/UpdateDataBetween2VersionByExecSqls.java =================================================================== diff -u -r13254 -r13799 --- forgon-core/src/main/java/com/forgon/dataupdater/service/UpdateDataBetween2VersionByExecSqls.java (.../UpdateDataBetween2VersionByExecSqls.java) (revision 13254) +++ forgon-core/src/main/java/com/forgon/dataupdater/service/UpdateDataBetween2VersionByExecSqls.java (.../UpdateDataBetween2VersionByExecSqls.java) (revision 13799) @@ -4,9 +4,12 @@ package com.forgon.dataupdater.service; import java.io.BufferedReader; +import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; +import java.io.InputStreamReader; +import java.io.UnsupportedEncodingException; import java.util.LinkedList; import java.util.List; @@ -120,12 +123,15 @@ // 读取sql语句 private void readUpdateSqls(String fileName) { updateSqls = null; - FileReader fileReader = null; BufferedReader bufferedReader = null; + InputStreamReader isr = null; + FileInputStream fis = null; StringBuilder sb = new StringBuilder(); + String charsetName = "utf-8"; try { - fileReader = new FileReader(fileName); - bufferedReader = new BufferedReader(fileReader); + fis = new FileInputStream(fileName); + isr = new InputStreamReader(fis, charsetName); + bufferedReader = new BufferedReader(isr); char[] cbuf = new char[4 * 1024]; while (true) { @@ -144,11 +150,14 @@ } catch (FileNotFoundException e) { e.printStackTrace(); throw new RuntimeException("文件未找到!"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + throw new RuntimeException(String.format("不支持[%s]编码", charsetName)); } finally { - if (fileReader != null) { + if (bufferedReader != null) { try { - fileReader.close(); - fileReader = null; + bufferedReader.close(); + bufferedReader = null; } catch (IOException e) { e.printStackTrace(); // logException(e);