※ 引述《aleelyle (lyle)》之銘言:
: 拍謝 我的意思是不用RandomAccessFile(而且也不能直接用)
: 直接用inputstream讀,outputstream寫
: 不能直接從asset開檔的原因是因為/assets/ 裡面的檔案會被壓縮加密到.apk檔案裡面
: 所以在放上機器時實際上已經沒這些檔案了
這句話我不懂 apk裡面就包含這些檔案了 為什麼放到機器上卻說沒這些檔案?
放到機器上其實就是apk被放在記憶體內
所以怎麼會說不存在呢?
: 然後inputstream, outputstream無法直接randomaccess(seek)的原因是因為
: 他們是"stream"
: 間接的方法是把整個stream讀(寫)到記憶體裡面處理
: 或者另外寫檔案出來.....(不建議,原因:效能)
: 或者一開始檔案就不該放在這裡(放在這唯一的好處就是私密性,但是
: 要達到私密性有其他方法)
嗯,我了解您這個意思,
可是原PO就是要
1.使用到RandomAccessFile的情況
2.讀取文字檔
假設今天被要求這兩個條件下
是不建議作呢? 還是做不出來?
我試著用AssetManager,讀出文字檔,然後轉成stream的方式,
再轉成File 之後餵給RandomAccessFile去吃,
當然這樣的做法會讓人感覺有點多餘 ,
因此我會想詢問是否有更好的做法?
然而a大在下面推文說 可以做到!
因此我以為a大有更好的解法,
結果變成a大卻又說不推薦這樣做,
所以我才會感覺似乎沒有讓您理解我想表達的意思,
因此寫這篇希望能夠讓a大理解我想表達的內容。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.64.168.114
※ 編輯: givemepass 來自: 61.64.168.114 (12/29 00:00)