You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.2 KiB

  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import java.io.InputStreamReader;
  5. public class ResourceApi {
  6. public String getFileFromResourceAsString(String fileName) throws IOException {
  7. InputStream inputStream = getFileFromResourceAsStream(fileName);
  8. return getStringFromInputStream(inputStream);
  9. }
  10. public InputStream getFileFromResourceAsStream(String fileName) {
  11. //ClassLoader classLoader = getClass().getClassLoader();
  12. ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
  13. InputStream inputStream = classLoader.getResourceAsStream(fileName);
  14. if (inputStream == null) {
  15. throw new IllegalArgumentException("file not found! " + fileName);
  16. } else {
  17. return inputStream;
  18. }
  19. }
  20. public String getStringFromInputStream(InputStream inputStream) throws IOException {
  21. BufferedReader in = new BufferedReader(new InputStreamReader(inputStream));
  22. String inputLine;
  23. StringBuffer response = new StringBuffer();
  24. while ((inputLine = in.readLine()) != null) {
  25. response.append(inputLine + "\n");
  26. }
  27. in.close();
  28. return response.toString();
  29. }
  30. }