001 /******************************************************************************
002 * Copyright (C) MActor Developers. All rights reserved. *
003 * ---------------------------------------------------------------------------*
004 * This file is part of MActor. *
005 * *
006 * MActor is free software; you can redistribute it and/or modify *
007 * it under the terms of the GNU General Public License as published by *
008 * the Free Software Foundation; either version 2 of the License, or *
009 * (at your option) any later version. *
010 * *
011 * MActor is distributed in the hope that it will be useful, *
012 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
014 * GNU General Public License for more details. *
015 * *
016 * You should have received a copy of the GNU General Public License *
017 * along with MActor; if not, write to the Free Software *
018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA *
019 ******************************************************************************/
020 package org.mactor.ui.gui;
021
022 import java.io.File;
023 import java.io.FileInputStream;
024 import java.io.InputStreamReader;
025
026 import org.mactor.framework.MactorException;
027
028 public class ResourceUtil {
029 public static String readResourceTextContent(String resource) throws MactorException {
030 try {
031 InputStreamReader ir = new InputStreamReader(Thread.currentThread().getContextClassLoader().getResourceAsStream(resource));
032 char[] buffer = new char[4000];
033 StringBuffer sb = new StringBuffer();
034 while (true) {
035 int count = ir.read(buffer);
036 if (count <= 0)
037 break;
038 sb.append(buffer, 0, count);
039 }
040 return sb.toString();
041 } catch (Exception e) {
042 throw new MactorException("Failed to read the resoruces '" + resource + "'", e);
043 }
044 }
045 public static String readFileContent(File path) throws MactorException {
046 try {
047 InputStreamReader ir = new InputStreamReader(new FileInputStream(path));
048 char[] buffer = new char[4000];
049 StringBuffer sb = new StringBuffer();
050 while (true) {
051 int count = ir.read(buffer);
052 if (count <= 0)
053 break;
054 sb.append(buffer, 0, count);
055 }
056 return sb.toString();
057 } catch (Exception e) {
058 throw new MactorException("Failed to read the file '" + path.getAbsolutePath() + "'", e);
059 }
060 }
061 }