/* * Encog(tm) Core v3.4 - Java Version * http://www.heatonresearch.com/encog/ * https://github.com/encog/encog-java-core * Copyright 2008-2016 Heaton Research, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * For more information on Heaton Research copyrights, licenses * and trademarks visit: * http://www.heatonresearch.com/copyright */ package org.encog.util.file; import java.io.IOException; import java.io.InputStream; import org.encog.EncogError; public class ResourceInputStream { /** * Construct a location to read from the specified resource. * * An example of the format for a file stored this way is: * * org/encog/data/classes.txt * * @param resource * The resource to read from. * @return The stream. */ public static InputStream openResourceInputStream(final String resource) { final ClassLoader loader = ResourceInputStream.class.getClassLoader(); InputStream result = loader.getResourceAsStream(resource); if (result == null) { throw new EncogError("Can't open resource: " + resource); } return result; } public static String readResourceAsString(String resource) { try { InputStream is = openResourceInputStream(resource); String result = FileUtil.readStreamAsString(is); is.close(); return result; } catch (IOException ex) { throw new EncogError(ex); } } }