讀取Assets中的文件數據
InputStream is = getResources().getAssets()
.open("讀取的文件名");
InputStreamReader isr = new InputStreamReader(is,"utf-8");
BufferedReader bf = new BufferedReader(isr);
String string="";
while ((string = bf.readLine()) != null) {
System.out.println(string);
}
讀取raw中的文件數據
InputStream is = getResources().openRawResource(R.raw.讀取的文件名);
InputStreamReader isr = new InputStreamReader(is,"utf-8");
BufferedReader bf = new BufferedReader(isr);
String string="";
while ((string = bf.readLine()) != null) {
System.out.println(string);
}
寫入外部存儲文件
//獲取SD卡根路徑
File sdPath = Environment.getExternalStorageDirectory();
File file = new File(sdPath, "我的文件.txt");
//如果不存在SD卡,則不寫入
if(!sdPath.exists()){
Toast.makeText(MainActivity.this, "無SD卡", Toast.LENGTH_SHORT).show();
}else{
try {
//如果文件夾不存在則創建
if(!file.exists()){
file.createNewFile();
FileOutputStream fos = new FileOutputStream(file);
OutputStreamWriter osw = new OutputStreamWriter(fos, "utf-8");
osw.write("我是內容");
osw.flush();
fos.flush();
osw.close();
fos.close();
Toast.makeText(MainActivity.this, "已創建", Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
讀取外部存儲文件
//獲取SD卡根路徑
File sdPath = Environment.getExternalStorageDirectory();
File file = new File(sdPath, "我的文件.txt");
try {
//如果文件存在則讀取
if(file.exists()){
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis, "utf-8");
char[] buf = new char[fis.available()];
isr.read(buf);
isr.close();
fis.close();
String string = new String(buf);
Toast.makeText(MainActivity.this, string, Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}