BaseGenerator.java 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.java110.code;
  2. import com.alibaba.fastjson.JSONObject;
  3. import java.io.*;
  4. public class BaseGenerator {
  5. //首字母转小写
  6. public static String toLowerCaseFirstOne(String s){
  7. if(Character.isLowerCase(s.charAt(0)))
  8. return s;
  9. else
  10. return (new StringBuilder()).append(Character.toLowerCase(s.charAt(0))).append(s.substring(1)).toString();
  11. }
  12. //首字母转大写
  13. public static String toUpperCaseFirstOne(String s){
  14. if(Character.isUpperCase(s.charAt(0)))
  15. return s;
  16. else
  17. return (new StringBuilder()).append(Character.toUpperCase(s.charAt(0))).append(s.substring(1)).toString();
  18. }
  19. /**
  20. * 读入TXT文件
  21. */
  22. public static StringBuffer readFile(String pathname) {
  23. StringBuffer sb = new StringBuffer();
  24. try (FileReader reader = new FileReader(pathname);
  25. BufferedReader br = new BufferedReader(reader) // 建立一个对象,它把文件内容转成计算机能读懂的语言
  26. ) {
  27. String line ="";
  28. //网友推荐更加简洁的写法
  29. while ((line = br.readLine()) != null) {
  30. // 一次读入一行数据
  31. sb.append(line+"\n");
  32. }
  33. } catch (IOException e) {
  34. e.printStackTrace();
  35. }
  36. return sb;
  37. }
  38. /**
  39. * 写入TXT文件
  40. */
  41. public static void writeFile(String filePath,String fileName) {
  42. try {
  43. File writeName = new File(filePath); // 相对路径,如果没有则要建立一个新的output.txt文件
  44. File fileParent = writeName.getParentFile();
  45. if(!fileParent.exists()){
  46. fileParent.mkdirs();
  47. }
  48. writeName.createNewFile(); // 创建新文件,有同名的文件的话直接覆盖
  49. try (FileWriter writer = new FileWriter(writeName);
  50. BufferedWriter out = new BufferedWriter(writer)
  51. ) {
  52. out.write(fileName);
  53. out.flush(); // 把缓存区内容压入文件
  54. }
  55. } catch (IOException e) {
  56. e.printStackTrace();
  57. }
  58. }
  59. protected String replaceTemplateContext(String srcStr, JSONObject data){
  60. return srcStr.replace("@@templateName@@", data.getString("templateName"))
  61. .replace("@@templateCode@@", data.getString("templateCode"))
  62. .replace("@@TemplateCode@@", toUpperCaseFirstOne(data.getString("templateCode")))
  63. .replace("@@templateKey@@", data.getString("templateKey"))
  64. .replace("@@TemplateKey@@", toUpperCaseFirstOne(data.getString("templateKey")))
  65. .replace("@@templateKeyName@@", data.getString("templateKeyName"))
  66. .replace("@@TEMPLATECODE@@", data.getString("templateCode").toUpperCase());
  67. }
  68. }