CommonService.java 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.example.xiaoshiweixinback.service.importPatent;
  2. import com.alibaba.fastjson.JSON;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.example.xiaoshiweixinback.XiaoshiWeixinbackApplication;
  5. import com.example.xiaoshiweixinback.business.utils.FileUtils;
  6. import lombok.extern.slf4j.Slf4j;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.boot.system.ApplicationHome;
  9. import org.springframework.stereotype.Service;
  10. import java.io.*;
  11. import java.util.ArrayList;
  12. import java.util.HashMap;
  13. import java.util.List;
  14. import java.util.Map;
  15. /**
  16. * 公用服务类
  17. *
  18. * @author lrj
  19. */
  20. @Service
  21. @Slf4j
  22. public class CommonService {
  23. /**
  24. * 根据获得文件json
  25. *
  26. * @param fileName
  27. * @return
  28. */
  29. public static String readJsonFile(String fileName) {
  30. String json = "";
  31. try {
  32. ApplicationHome ah = new ApplicationHome(XiaoshiWeixinbackApplication.class);
  33. //获取 applicationHome 内的路径 ...\target\classes 到这一层级下
  34. File fileTem = ah.getSource();
  35. //获取 file的parentFile 即最后一级之前的所有层级路径(包括盘符) 这里能获得到的最终层级为 ...\target 后续用FILE_SEPARATOR(系统路径分割通配符 即 "\") 以及fileName拼接生成存放文件的目录层级 即为根目录 root
  36. String rootPath = fileTem.getParentFile().toString() + FileUtils.FILE_SEPARATOR + "jsons/";
  37. // String filePath = fileUtils.getPath("/11.docx");
  38. File file = new File(rootPath + fileName);
  39. Reader reader = new InputStreamReader(new FileInputStream(file), "utf-8");
  40. int ch = 0;
  41. StringBuffer buffer = new StringBuffer();
  42. while ((ch = reader.read()) != -1) {
  43. buffer.append((char) ch);
  44. }
  45. reader.close();
  46. json = buffer.toString();
  47. return json;
  48. } catch (IOException e) {
  49. e.printStackTrace();
  50. return null;
  51. }
  52. }
  53. public static File getFile(String fileName) {
  54. String json = "";
  55. try {
  56. ApplicationHome ah = new ApplicationHome(XiaoshiWeixinbackApplication.class);
  57. //获取 applicationHome 内的路径 ...\target\classes 到这一层级下
  58. File fileTem = ah.getSource();
  59. //获取 file的parentFile 即最后一级之前的所有层级路径(包括盘符) 这里能获得到的最终层级为 ...\target 后续用FILE_SEPARATOR(系统路径分割通配符 即 "\") 以及fileName拼接生成存放文件的目录层级 即为根目录 root
  60. String rootPath = fileTem.getParentFile().toString() + FileUtils.FILE_SEPARATOR ;
  61. // String filePath = fileUtils.getPath("/11.docx");
  62. File file = new File(rootPath + fileName);
  63. return file;
  64. } catch (Exception e) {
  65. e.printStackTrace();
  66. return null;
  67. }
  68. }
  69. }