package com.taskadapter.redmineapi; import java.io.*; public class MyIOUtils { public static InputStream getResourceAsStream(String resource) throws IOException { ClassLoader cl = MyIOUtils.class.getClassLoader(); InputStream in = cl.getResourceAsStream(resource); if (in == null) { throw new IOException("resource \"" + resource + "\" not found"); } return in; } /** * Loads the resource from classpath */ public static String getResourceAsString(String resource) throws IOException { InputStream in = getResourceAsStream(resource); return convertStreamToString(in); } private static String convertStreamToString(InputStream is) throws IOException { /* * To convert the InputStream to String we use the Reader.read(char[] * buffer) method. We iterate until the Reader return -1 which means * there's no more data to read. We use the StringWriter class to * produce the string. */ if (is != null) { Writer writer = new StringWriter(); char[] buffer = new char[1024]; try { Reader reader = new BufferedReader(new InputStreamReader(is, "UTF8")); int n; while ((n = reader.read(buffer)) != -1) { writer.write(buffer, 0, n); } } finally { is.close(); } return writer.toString(); } else { return ""; } } }