Files
VisualSapfor/src/Common/Passes/All/EraseBadSymbols.java

28 lines
1.1 KiB
Java
Raw Normal View History

package Common.Passes.All;
2023-09-17 22:13:42 +03:00
import Common.Global;
import Common.Utils.Utils;
import ProjectData.Files.DBProjectFile;
import Common.Passes.Transformation;
2023-09-17 22:13:42 +03:00
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.nio.file.Paths;
public class EraseBadSymbols extends Transformation {
@Override
protected void body() throws Exception {
for (DBProjectFile file : target.db.files.Data.values()) {
String file_text = FileUtils.readFileToString(file.file);
StringBuilder res_text = new StringBuilder();
for (char c : file_text.toCharArray()) {
if (Utils.isEnglishLetter(c) || Character.isDigit(c) || Utils.isSign(c)) {
res_text.append(c);
} else if (Utils.isRussianLetter(c))
res_text.append(Utils.Translit(c));
else res_text.append(' ');
}
File dst = Paths.get(target.last_version.Home.getAbsolutePath(), Global.isWindows ? file.name : file.name.replace('\\', '/')).toFile();
FileUtils.write(dst, res_text.toString());
}
}
}