android解析txt文本文件和xml文件

来源:互联网 发布:淘宝高仿鞋店推荐2016 编辑:程序博客网 时间:2024/05/21 15:41

一、解析文本文件

// 解析Asset 数据        AssetManager assetManager = getAssets();        try        {            String str = readStream(assetManager.open("data.txt"));            ((TextView) findViewById(R.id.txAssets)).setText(str);        }        catch (IOException e)        {            e.printStackTrace();        }

private String readStream(InputStream is)    {        try        {            ByteArrayOutputStream bo = new ByteArrayOutputStream();            int i = is.read();            while (i != -1)            {                bo.write(i);                i = is.read();            }            return bo.toString();        }        catch (IOException e)        {            // TODO Auto-generated catch block            e.printStackTrace();            return "";        }    }

二、解析xml文件

 // 获取xml数据        Resources resources = getResources();        XmlResourceParser parser = resources.getXml(R.xml.data);        try        {            parser.next();            int eventType = parser.getEventType();            boolean inTitle = false;            while (eventType != XmlPullParser.END_DOCUMENT)            {                // 到达title节点时标记一下                if (eventType == XmlPullParser.START_TAG)                {                    if ("title".equals(parser.getName()))                    {                        inTitle = true;                    }                }                // 如过到达标记的节点则取出内容                if (eventType == XmlPullParser.TEXT && inTitle)                {                    ((TextView) findViewById(R.id.txXml)).setText(parser.getText());                }                parser.next();                eventType = parser.getEventType();            }        }        catch (XmlPullParserException e)        {            e.printStackTrace();            Log.e("error", e.getMessage());        }        catch (IOException e)        {            e.printStackTrace();            Log.e("error", e.getMessage());        }

三、获取raw数据

// 获取raw数据        InputStream is = resources.openRawResource(R.raw.rawtext);        ((TextView) findViewById(R.id.txRaw)).setText(readStream(is));


原创粉丝点击