android 工具类篇 ResourceUtils

来源:互联网 发布:淘宝放心淘是什么 编辑:程序博客网 时间:2024/05/31 00:39
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;import android.content.Context;/** * ResourceUtils *  * @author <a href="http://www.trinea.cn" target="_blank">Trinea</a> 2012-5-26 */public class ResourceUtils {    /**     * get an asset using ACCESS_STREAMING mode. This provides access to files that have been bundled with an     * application as assets -- that is, files placed in to the "assets" directory.     *      * @param context     * @param fileName The name of the asset to open. This name can be hierarchical.     * @return     */    public static String geFileFromAssets(Context context, String fileName) {        if (context == null || StringUtils.isEmpty(fileName)) {            return null;        }        StringBuilder s = new StringBuilder("");        try {            InputStreamReader in = new InputStreamReader(context.getResources().getAssets().open(fileName));            BufferedReader br = new BufferedReader(in);            String line;            while ((line = br.readLine()) != null) {                s.append(line);            }            return s.toString();        } catch (IOException e) {            e.printStackTrace();            return null;        }    }    /**     * get content from a raw resource. This can only be used with resources whose value is the name of an asset files     * -- that is, it can be used to open drawable, sound, and raw resources; it will fail on string and color     * resources.     *      * @param context     * @param resId The resource identifier to open, as generated by the appt tool.     * @return     */    public static String geFileFromRaw(Context context, int resId) {        if (context == null) {            return null;        }        StringBuilder s = new StringBuilder();        try {            InputStreamReader in = new InputStreamReader(context.getResources().openRawResource(resId));            BufferedReader br = new BufferedReader(in);            String line;            while ((line = br.readLine()) != null) {                s.append(line);            }            return s.toString();        } catch (IOException e) {            e.printStackTrace();            return null;        }    }    /**     * same to {@link ResourceUtils#geFileFromAssets(Context, String)}, but return type is List<String>     *      * @param context     * @param fileName     * @return     */    public static List<String> geFileToListFromAssets(Context context, String fileName) {        if (context == null || StringUtils.isEmpty(fileName)) {            return null;        }        List<String> fileContent = new ArrayList<String>();        try {            InputStreamReader in = new InputStreamReader(context.getResources().getAssets().open(fileName));            BufferedReader br = new BufferedReader(in);            String line;            while ((line = br.readLine()) != null) {                fileContent.add(line);            }            br.close();            return fileContent;        } catch (IOException e) {            e.printStackTrace();            return null;        }    }    /**     * same to {@link ResourceUtils#geFileFromRaw(Context, int)}, but return type is List<String>     *      * @param context     * @param resId     * @return     */    public static List<String> geFileToListFromRaw(Context context, int resId) {        if (context == null) {            return null;        }        List<String> fileContent = new ArrayList<String>();        BufferedReader reader = null;        try {            InputStreamReader in = new InputStreamReader(context.getResources().openRawResource(resId));            reader = new BufferedReader(in);            String line = null;            while ((line = reader.readLine()) != null) {                fileContent.add(line);            }            reader.close();            return fileContent;        } catch (IOException e) {            e.printStackTrace();            return null;        }    }}

0 0
原创粉丝点击