android文件讀取文件內容
A. android編程:怎樣讀取txt文件
android 能讀取的文件都是系統裡面的(這是系統不是開發壞境系統,而是你程序運行的環境系統,也就是avd或者真實的手機設備的sd卡),這就需要你把文件導入你的環境中,mnt目錄底下,然後按到讀取sd卡的路徑讀取即可。
B. android如何讀取txt文本裡面的數據
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String fileName = "/sdcard/y.txt";//文件路徑
// 也可以用String fileName = "mnt/sdcard/Y.txt";
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
// FileInputStream fin = openFileInput(fileName);
// 用這個就不行了,必須用FileInputStream
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");////依Y.txt的編碼類型選擇合適的編碼,如果不調整會亂碼
fin.close();//關閉資源
System.out.println("res--->"+res);
int a=Integer.parseInt(res.substring(3, 5));
int b=Integer.parseInt(res.substring(8, 10));
System.out.println(a+"res--->"+b);//獲取的a.b
} catch (Exception e) {
e.printStackTrace();
}
}
C. android 開發怎麼讀取並顯示txt文件
StringBuffer sb = new StringBuffer(); File file = new File("myfile.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); String line = ""; while((line = br.readLine())!=null){ sb.append(line); } br.close(); (TextView)findViewById(R.id.text1).setText(sb.toString()); 第二行,創建文件對象,指向需要讀取的文件 第三行,創建文件Reader對象,讀取指定的文件 第四五行,創建一個line接受讀取的文件內容,因為是文本文件,所以一行一行讀 第八行,關閉文件讀取對象 第九行,將文本文件內容寫入到TextVIew中
D. android讀取txt文件
您好,Android的res文件夾是用來存儲資源的,可以在res文件夾下建立一個raw文件夾,放置在raw文件夾下的內容會被原樣打包,而不會被編譯成二進制文件,並且可以通過R文件進行很方便地訪問。
比如我們可以將更新信息、版權信息等放到txt文件中,然後放到raw文件中,然後很方便地進行訪問。
在raw中放入一個a.txt文件,然後就可以在Activity中使用getResources().openRawResource(R.raw.a);方法獲取一個此文件的InputStream類,而後就可以很方便地進行讀寫a.txt了。
E. android一個文本文件如何按行讀取
java">try{
InputStreammyInput=mcontext.getResources().openRawResource(R.raw.medicalspeciality);
InputStreamReaderreader=newInputStreamReader(myInput);
BufferedReaderbreader=newBufferedReader(reader);
Stringstr;
FileWritermyOutput=newFileWriter(outFileName,true);
while((str=breader.readLine())!=null){
System.out.println(i+++str);
}
//Closethestreams
myOutput.flush();
myOutput.close();
myInput.close();
}catch(Exceptione){
//TODO:handleexception
e.getStackTrace();
}
F. android 讀取txt文件獲取每行內容
方法:
通過輸入流的readline方法進行按行讀取內容。
舉例:
(StringfilePath){//輸入文件路徑
FileInputStreamfis=openFileInput(filePath);//打開文件輸入流
StringBuffersBuffer=newStringBuffer();
DataInputStreamdataIO=newDataInputStream(fis);//讀取文件數據流
StringstrLine=null;
while((strLine=dataIO.readLine())!=null){//通過readline按行讀取
sBuffer.append(strLine+" ");//strLine就是一行的內容
}
dataIO.close();
fis.close();
}
G. android怎樣讀文本文件的內容
1. 讀取操作
String path = "/sdcard/foo.txt";
String content = ""; //文件內容字元串
//打開文件
File file = new File(path);
//如果path是傳遞過來的參數,可以做一個非目錄的判斷
if (file.isDirectory()){
Toast.makeText(EasyNote.this, "沒有指定文本文件!", 1000).show();
}
else{
try {
InputStream instream = new FileInputStream(file);
if (instream != null) {
InputStreamReader inputreader = new InputStreamReader(instream);
BufferedReader buffreader = new BufferedReader(inputreader);
String line;
//分行讀取
while (( line = buffreader.readLine()) != null) {
content += line + "\n";
}
instream.close();
} catch (java.io.FileNotFoundException e) {
Toast.makeText(EasyNote.this, "文件不存在", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
}
2. 寫入操作
String filePath = "/sdcard/foo2.txt";
String content = "這是將要寫入到文本文件的內容";
//如果filePath是傳遞過來的參數,可以做一個後綴名稱判斷; 沒有指定的文件名沒有後綴,則自動保存為.txt格式
if(!filePath.endsWith(".txt") && !filePath.endsWith(".log"))
filePath += ".txt";
//保存文件
File file = new File(filePath);
try {
OutputStream outstream = new FileOutputStream(file);
OutputStreamWriter out = new OutputStreamWriter(outstream);
out.write(content);
out.close();
} catch (java.io.IOException e) {
e.printStackTrace();
}
H. 如何用安卓文件系統讀寫數據
經過ARM板-RK3288和小米手機的測試。親測可以使用。
博客中寫的欠缺的地方,無所謂,直接去看代碼,裡面的注釋很詳細。程序員看代碼就行了,每個函數全部封裝好了,廢話不多話。博客很長,大家慢慢看,看完一勞永逸,以後直接調我的函數就行了,但是講的很詳細,全部都是對比的來實現,方便大家的閱讀。
總體:大家依據直接餓的需求去看
一、先大體的介紹一下理論部分,這里還是很重要的。
二、常見的存儲數據的方式
三、IO 文件流的讀取方式
四、sharedPreference 存儲
五、SQLite的存儲方式
六、assets的存儲方式
七、res的存儲方式
八、raw的存儲方式
一、先大體的介紹一下理論部分,這里還是很重要的。
安卓存儲文件、數據的地方: RAM、ROM、內存(內部存儲器)、APP程序裡面(Assets,raw,res),SD卡(早期的安卓的可以插卡,現在的不支持了,但是有些 arm板 嵌入式方向的還是帶卡槽的),總體上來說就是這些了,網路。
接下來再細分:
1、RAM、ROM 這些東西我們就別碰了,不然一大堆問題,Environment.getRootDirectory() 需要獲取root許可權,不合適
2、內存和SD卡 大家得理解 Environment.getExternalStorageState() 代表的是什麼意思,不是插卡的SD卡,而是說你買了開發板、手機,廠家送你的存儲地方(直接你得讓他送你哈)。 這部分作為主要的存儲路徑,小數據和大數據都適用。
3、SD卡,黑色那張卡,老古董,現在手機都沒有了,不建議大家使用,非要去使用,我也寫了相關的代碼(根據機型,不通用,切記,不能用不能怪我,這個只提供思路)。
4、網路,請求自己的伺服器,讀取數據,URI的方式,httpClient post 和 get 兩種請求數據的方式
存儲的地方就這么多了。
二、常見的存儲數據的方式
1、sharedPreference, 將數據保存為 xml 的格式,
2、資料庫 將SQLite的方式
3、contentprovider APP之間交互數據的方式。(這里不講,沒有用過,沒有發言權)
4、文件的讀取(IO流) 和 Java的操作類似。
5、Android內部的存儲 assets,res, raw, 三者的區別
assets 和 raw 是不會隨著 APP進行編譯, res下的文件會隨著app一起編譯,每次 shift+alt+x 都要等好久
assets目錄下可以創建子文件夾 raw 不可以
I. Android 中的文件讀寫操作
IO流(操作文件內容): 位元組流
參考:
AssetManager
assets 文件夾用於存儲應用需要的文件,在安裝後可直接從其中讀取使用或者寫入本地存儲中
Android Studio 默認不建立該文件夾,可以手動新建 : app -> src -> main -> assets
或者,右鍵 main -> New -> Folder -> Assets Folder
AssetManager 對象可以直接訪問該文件夾:
獲取方法:
使用函數 open 可以打開 assets 文件夾中對象,返回一個 InputStream 對象:
open
獲取方法:
J. android讀取TXT文件數據
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String fileName = "/sdcard/y.txt";//文件路徑
// 也可以用String fileName = "mnt/sdcard/Y.txt";
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
// FileInputStream fin = openFileInput(fileName);
// 用這個就不行了,必須用FileInputStream
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");////依Y.txt的編碼類型選擇合適的編碼,如果不調整會亂碼
fin.close();//關閉資源
System.out.println("res--->"+res);
int a=Integer.parseInt(res.substring(3, 5));
int b=Integer.parseInt(res.substring(8, 10));
System.out.println(a+"res--->"+b);//獲取的a.b
} catch (Exception e) {
e.printStackTrace();
}
}