基于android中读取assets目录下a.txt文件并进行解析的深入分析

android读取assets文件下的内容,一般都是使用getAsset.open()方法,并将文件的路径作为参数传入,而当我们解析一个目录下的文件时需要对其进行解析时,比如:a.txt文件的内容为:
name
android,liu
class
1,2,3,4
这些文件有时就像是数据库文件的格式一样,我们就需要对其进行解析。
我们知道获取assets文件后返回的是一个inputstream而不是一个file类型,所以我们需要对inputstream进行解析。主要分为两个阶段:第一个阶段为:去换行符,第二个阶段为分解每行信息。(ps:本人是个菜鸟,这个是我自己尝试的一个方法,希望有更好的方式来进行解析)
我们需要将inputstream中的内容进行存储,先暂时存储到一个byte【】数组中,然后将byte数组放入string串中,接下来就是对该串进行解析。

第一阶段:去换行符。通过string.split("[\\n]")方法(ps:为什么要用[\\n]呢,这个可以查阅正则表达式,而[\\n]的意思就是匹配换行符),这样我们需要将分割的结果存储到string数组中。

第二阶段:分解每行信息。可以说第一阶段做的就是将每一行的信息存储到string数组中了,接下来就是对每个string进行解析,同样需要用到string.split()方法,由于我们用到的是逗号作为分隔符,所以"[,]"作为参数进行分割,同时需要注意的是在进行数据的转换时需要将string中的空格去掉,使用到string.trim()方法,这样就可以将string转换成int。
接下来就是怎样将这些信息使用到程序中了 。

(0)

相关推荐

  • Android获取assets文件夹中的数据并写入SD卡示例

    本文示例主要实现了Android获取assets文件夹中的数据并将其写入到SD卡中,该程序实现的步骤主要为:首先读取assets文件夹中的数据库,再将其写入到SD存储卡中. 完整示例代码如下: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import android.content.Context; /*将assets文件

  • android读取Assets图片资源保存到SD卡实例

    复制代码 代码如下: public class ReadBitmap { public void readByte(Context c, String name, int indexInt) { byte[] b = null; int[] intArrat = c.getResources().getIntArray(indexInt); try { AssetManager am = null; am = c.getAssets(); InputStream is = am.open(nam

  • android读取assets文件示例

    复制代码 代码如下: // 读取assets文件private void assetsRead(){String fileName = "my_assets.txt";// assets下文件//String fileName = "test/my_assets_test.txt";// assets下子目录文件String ret = "";try {InputStream is = getResources().getAssets().ope

  • Android访问assets本地json文件的方法

    目的:当App中用到固定的json数据时,如:国家城市列表.班级成员等时,可以将json数据制作为本地json文件存入assets文件夹下. 步骤如下: 1.新建assets文件夹,并将json文件复制到此文件夹中 在main文件夹下新建assets文件,然后再assets文件中新建namelist.json文件夹,将json数据复制到test.json文件中. 2.访问json文件 try { AssetManager assetManager = getAssets(); // 获得asse

  • 读写Android中assets目录下的文件的方法详解

    Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: 这种资源文件系统会在R.java里面自动生成该资源文件的ID,所以访问这种资源文件比较简单,通过R.XXX.ID即可: 第二种是assets目录下存放的原生资源文件: 因为系统在编译的时候不会编译assets下的资源文件,所以我们不能通过R.XXX.ID的方式访问它们.那我么能不能通过该资源的绝对路径去访问它们呢?因为apk安装之后会放在/data/app/**.apk目录下,以apk形式存在,asset/r

  • Android读取assets目录下的所有图片并显示的方法

    本文实例讲述了Android读取assets目录下的所有图片并显示的方法.分享给大家供大家参考.具体方法分析如下: 在assets文件夹里面的文件都是保持原始的文件格式,需要用AssetManager以字节流的形式读取文件. 1. 先在Activity里面调用getAssets() 来获取AssetManager引用. 2. 再用AssetManager的open(String fileName, int accessMode) 方法则指定读取的文件以及访问模式就能得到输入流InputStrea

  • Android访问php取回json数据实例

    php代码 复制代码 代码如下: $array = array( 'username'=>'杨铸', 'password'=>'123456', 'user_id'=>1 ); echo json_encode($array); java代码 复制代码 代码如下: private void startUrlCheck(String username,String password) { HttpClient client = new DefaultHttpClient(); String

  • 基于android中读取assets目录下a.txt文件并进行解析的深入分析

    android读取assets文件下的内容,一般都是使用getAsset.open()方法,并将文件的路径作为参数传入,而当我们解析一个目录下的文件时需要对其进行解析时,比如:a.txt文件的内容为:nameandroid,liuclass1,2,3,4这些文件有时就像是数据库文件的格式一样,我们就需要对其进行解析.我们知道获取assets文件后返回的是一个inputstream而不是一个file类型,所以我们需要对inputstream进行解析.主要分为两个阶段:第一个阶段为:去换行符,第二个

  • Android开发实现读取assets目录下db文件的方法示例

    本文实例讲述了Android开发实现读取assets目录下db文件的方法.分享给大家供大家参考,具体如下: 最近准备打算写一个关于天气预报的app,偶然的机会在一大神的博客上看到了一个获取天气的api,获取天气是通过城市的cityID,项目中准备通过读取weather_city.db数据库来查询cityID,这篇文章写怎么读取assets目录下的db文件,其实方法也挺简单的就是把assets目录下的db文件复制一份到"/data/data/" + packName + "/&

  • Python读取指定目录下指定后缀文件并保存为docx

    最近有个奇葩要求 要项目中的N行代码 申请专利啥的 然后作为程序员当然不能复制粘贴 用代码解决.. 使用python-docx读写docx文件 环境使用python3.6.0 首先pip安装python-docx pip install python-docx 然后下面是脚本 修改目录,这里默认取脚本运行目录下的src文件夹 取.cs后缀的所有文件 读取并保存为docx 有一点需要注意,如果文件中有中文,请用vscode或者其他编辑器使用utf-8格式打开,看看有没有乱码 其中每处理一个文件都会

  • Android实现读取SD卡下所有TXT文件名并用listView显示出来的方法

    本文实例讲述了Android实现读取SD卡下所有TXT文件名并用listView显示出来的方法.分享给大家供大家参考,具体如下: MainActivity.Java package com.zxl; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import android.app.Activity; import android.os.Bundle; import android.os.En

  • Python 读取某个目录下所有的文件实例

    在处理数据的时候,因为没有及时的去重,所以需要重新对生成txt进行去重. 可是一个文件夹下有很多txt,总不可能一个一个去操作,这样效率太低了.这里我们需要用到 os 这个包 关键的代码 <span style="font-size:14px;"># coding=utf-8 #出现了中文乱码的问题,于是我无脑utf-8 .希望后期的学习可以能理解 import os import os.path import re import sys import codecs rel

  • python读取一个目录下所有txt里面的内容方法

    实例如下所示: import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文件 ''' # 所有文件夹,第一个字段是次目录的级别 dirList = [] # 所有文件 fileList = [] # 返回一个列表,其中包含在目录条目的名称 files = os.listdir(path) # 先添加目录级别 dirList.append(str(level)) for f

  • Android 中读取Excel文件实例详解

    Android 中读取Excel文件实例详解 最近有个需求需要在app内置数据,新来的产品扔给了我两个Excel表格就不管了(两个表格格式还不统一...),于是通过度娘等方法找到了Android中读取Excel表格文件的一种方法,记录一下. 闲话一下Excel中工作簿和工作表的区别: 工作簿中包含有工作表.工作簿可以由一张或多张工作表组成,一个工作簿就是一个EXCEL表格文件. 好了,开始读取表格文件吧. 前提 首先,我们假设需要读取的表格文件名字为test.xls, 位于assets根目录下.

  • 把某个目录下所有txt中第三行第四个数字相加

    复制代码 代码如下: @echo off :: 把某个目录下所有txt中第三行第四个数字相加 :: set num=0 setlocal enabledelayedexpansion :: 其实用skip=2来跳过头两行的效率更高 for %%i in (*.txt) do ( set file=%%i for /f "tokens=1* delims=:" %%j in ('findstr /n . !file!') do ( set var=%%k if %%j equ 3 (se

随机推荐