79 lines
2.1 KiB
Java
79 lines
2.1 KiB
Java
/**
|
|
*@Title: ToUppercaseUtil.java
|
|
*@Package com.nis.util
|
|
*@Description TODO
|
|
*@author dell
|
|
*@date 2018年6月28日 下午1:39:46
|
|
*@version 版本号
|
|
*/
|
|
package com.nis.util;
|
|
|
|
import java.io.File;
|
|
import java.io.FileNotFoundException;
|
|
import java.io.IOException;
|
|
import java.io.RandomAccessFile;
|
|
import java.util.regex.Matcher;
|
|
import java.util.regex.Pattern;
|
|
|
|
/**
|
|
* @ClassName: ToUppercaseUtil.java
|
|
* @Description: 替换message_zh_CN.properties的ascii符号由小写至大写
|
|
* @author (wx)
|
|
* @date 2018年6月28日 下午1:39:46
|
|
* @version V1.0
|
|
*/
|
|
public class ToUppercaseUtil {
|
|
public static void main(String[] args) {
|
|
File file=new File("C:/Users/dell/git/gwall/src/main/resources/messages/message_zh_CN.properties");
|
|
try {
|
|
RandomAccessFile raf=new RandomAccessFile(file, "rw");
|
|
long lastPoint=0;
|
|
String line=null;
|
|
while((line=raf.readLine())!=null){
|
|
if(line.startsWith("#")){
|
|
lastPoint=raf.getFilePointer();
|
|
continue;
|
|
}else{
|
|
if(StringUtils.isNotBlank(line)){
|
|
String oldline=line;
|
|
String[] split=line.split("=");
|
|
String expression="\\\\u[0-9a-f]{4}";
|
|
Pattern p=Pattern.compile(expression);
|
|
Matcher matcher=p.matcher(split[1]);
|
|
while(matcher.find()){
|
|
String ascii=matcher.group();
|
|
String newAscii="\\u"+ascii.substring(2).toUpperCase();
|
|
if(!ascii.equals(newAscii)){
|
|
line=line.replace(ascii, newAscii);
|
|
}
|
|
|
|
}
|
|
final long point=raf.getFilePointer();
|
|
if(line.equals(oldline)){
|
|
lastPoint=point;
|
|
continue;
|
|
}else{
|
|
raf.seek(lastPoint);
|
|
System.out.println("replace "+oldline+" with "+line);
|
|
raf.write(line.getBytes());
|
|
lastPoint=point;
|
|
}
|
|
|
|
}else{
|
|
lastPoint=raf.getFilePointer();
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
|
|
raf.close();
|
|
} catch (FileNotFoundException e) {
|
|
// TODO Auto-generated catch block
|
|
e.printStackTrace();
|
|
} catch (IOException e) {
|
|
// TODO Auto-generated catch block
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|