基于android中讀取assets目錄下a.txt文件并進(jìn)行解析的深入分析
更新時(shí)間:2013年05月20日 17:29:39 作者:
本篇文章是對(duì)在android需要中讀取assets目錄下a.txt文件進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
android讀取assets文件下的內(nèi)容,一般都是使用getAsset.open()方法,并將文件的路徑作為參數(shù)傳入,而當(dāng)我們解析一個(gè)目錄下的文件時(shí)需要對(duì)其進(jìn)行解析時(shí),比如:a.txt文件的內(nèi)容為:
name
android,liu
class
1,2,3,4
這些文件有時(shí)就像是數(shù)據(jù)庫(kù)文件的格式一樣,我們就需要對(duì)其進(jìn)行解析。
我們知道獲取assets文件后返回的是一個(gè)inputstream而不是一個(gè)file類型,所以我們需要對(duì)inputstream進(jìn)行解析。主要分為兩個(gè)階段:第一個(gè)階段為:去換行符,第二個(gè)階段為分解每行信息。(ps:本人是個(gè)菜鳥,這個(gè)是我自己嘗試的一個(gè)方法,希望有更好的方式來(lái)進(jìn)行解析)
我們需要將inputstream中的內(nèi)容進(jìn)行存儲(chǔ),先暫時(shí)存儲(chǔ)到一個(gè)byte【】數(shù)組中,然后將byte數(shù)組放入string串中,接下來(lái)就是對(duì)該串進(jìn)行解析。
第一階段:去換行符。通過(guò)string.split("[\\n]")方法(ps:為什么要用[\\n]呢,這個(gè)可以查閱正則表達(dá)式,而[\\n]的意思就是匹配換行符),這樣我們需要將分割的結(jié)果存儲(chǔ)到string數(shù)組中。
第二階段:分解每行信息??梢哉f(shuō)第一階段做的就是將每一行的信息存儲(chǔ)到string數(shù)組中了,接下來(lái)就是對(duì)每個(gè)string進(jìn)行解析,同樣需要用到string.split()方法,由于我們用到的是逗號(hào)作為分隔符,所以"[,]"作為參數(shù)進(jìn)行分割,同時(shí)需要注意的是在進(jìn)行數(shù)據(jù)的轉(zhuǎn)換時(shí)需要將string中的空格去掉,使用到string.trim()方法,這樣就可以將string轉(zhuǎn)換成int。
接下來(lái)就是怎樣將這些信息使用到程序中了 。
name
android,liu
class
1,2,3,4
這些文件有時(shí)就像是數(shù)據(jù)庫(kù)文件的格式一樣,我們就需要對(duì)其進(jìn)行解析。
我們知道獲取assets文件后返回的是一個(gè)inputstream而不是一個(gè)file類型,所以我們需要對(duì)inputstream進(jìn)行解析。主要分為兩個(gè)階段:第一個(gè)階段為:去換行符,第二個(gè)階段為分解每行信息。(ps:本人是個(gè)菜鳥,這個(gè)是我自己嘗試的一個(gè)方法,希望有更好的方式來(lái)進(jìn)行解析)
我們需要將inputstream中的內(nèi)容進(jìn)行存儲(chǔ),先暫時(shí)存儲(chǔ)到一個(gè)byte【】數(shù)組中,然后將byte數(shù)組放入string串中,接下來(lái)就是對(duì)該串進(jìn)行解析。
第一階段:去換行符。通過(guò)string.split("[\\n]")方法(ps:為什么要用[\\n]呢,這個(gè)可以查閱正則表達(dá)式,而[\\n]的意思就是匹配換行符),這樣我們需要將分割的結(jié)果存儲(chǔ)到string數(shù)組中。
第二階段:分解每行信息??梢哉f(shuō)第一階段做的就是將每一行的信息存儲(chǔ)到string數(shù)組中了,接下來(lái)就是對(duì)每個(gè)string進(jìn)行解析,同樣需要用到string.split()方法,由于我們用到的是逗號(hào)作為分隔符,所以"[,]"作為參數(shù)進(jìn)行分割,同時(shí)需要注意的是在進(jìn)行數(shù)據(jù)的轉(zhuǎn)換時(shí)需要將string中的空格去掉,使用到string.trim()方法,這樣就可以將string轉(zhuǎn)換成int。
接下來(lái)就是怎樣將這些信息使用到程序中了 。
相關(guān)文章
Android實(shí)現(xiàn)Service獲取當(dāng)前位置(GPS+基站)的方法
這篇文章主要介紹了Android實(shí)現(xiàn)Service獲取當(dāng)前位置(GPS+基站)的方法,較為詳細(xì)的分析了Service基于GPS位置的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09
android service實(shí)現(xiàn)循環(huán)定時(shí)提醒功能
這篇文章主要為大家詳細(xì)介紹了android service實(shí)現(xiàn)循環(huán)定時(shí)提醒功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
Android中系統(tǒng)自帶鎖WalkLock與KeyguardLock用法實(shí)例詳解
這篇文章主要介紹了Android中系統(tǒng)自帶鎖WalkLock與KeyguardLock用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了WalkLock與KeyguardLock的功能、作用、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-01-01
Android使用PhotoView實(shí)現(xiàn)圖片雙擊放大單擊退出效果
這篇文章主要為大家詳細(xì)介紹了Android使用PhotoView實(shí)現(xiàn)圖片雙擊放大單擊退出效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
Android開(kāi)發(fā)中Google為什么不讓用Handler的runWithScissors()
這篇文章主要介紹了Android開(kāi)發(fā)中Google為什么不讓用Handler的runWithScissors(),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
Android?中的監(jiān)聽(tīng)和按鍵處理詳情
這篇文章主要介紹了Android?中的監(jiān)聽(tīng)和按鍵處理詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
Android基于Http協(xié)議實(shí)現(xiàn)文件上傳功能的方法
這篇文章主要介紹了Android基于Http協(xié)議實(shí)現(xiàn)文件上傳功能的方法,結(jié)合實(shí)例形式分析了Android的HTTP協(xié)議原理與文件上傳功能實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-07-07
Android中ViewPager懶加載的優(yōu)化詳解
這篇文章主要為大家詳細(xì)介紹了Android中ViewPager懶加載的優(yōu)化相關(guān)技巧,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起了解下2024-04-04

