Android SD卡內的文件讀寫操作
private String readFromFile(Context context){
if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
String foldername = Environment.getExternalStorageDirectory().getPath()+ "/eryaApp";
File folder = new File(foldername);
if (folder == null || !folder.exists()) {
folder.mkdir();
}
File targetFile=new File("/sdcard/eryaApp/eryaShoppingList.txt");
String readedStr="";
try{
if(!targetFile.exists()){
targetFile.createNewFile();
return "No File error ";
}else{
InputStream in = new BufferedInputStream(new FileInputStream(targetFile));
BufferedReader br= new BufferedReader(new InputStreamReader(in, "UTF-8"));
String tmp;
while((tmp=br.readLine())!=null){
readedStr+=tmp;
}
br.close();
in.close();
return readedStr;
}
} catch (Exception e) {
Toast.makeText(context,e.toString(),Toast.LENGTH_LONG).show();
return e.toString();
}
}else{
Toast.makeText(context,"未發現SD卡!",Toast.LENGTH_LONG).show();
return "SD Card error";
}
}</pre>
private void SavedToText(Context context,String stringToWrite){
if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
String foldername = Environment.getExternalStorageDirectory().getPath()+ "/eryaApp";
File folder = new File(foldername);
if (folder == null || !folder.exists()) {
folder.mkdir();
}
String fileName="/eryaShoppingList"+".txt";
File targetFile = new File(foldername + fileName);
OutputStreamWriter osw;
try{
if(!targetFile.exists()){
targetFile.createNewFile();
osw = new OutputStreamWriter(new FileOutputStream(targetFile),"utf-8");
osw.write(stringToWrite);
osw.close();
}else{
osw = new OutputStreamWriter(new FileOutputStream(targetFile,true),"utf-8");
osw.write("\n"+stringToWrite);
osw.flush();
osw.close();
}
} catch (Exception e) {
Toast.makeText(context,e.toString(),Toast.LENGTH_LONG).show();
}
}else{
Toast.makeText(context,"未發現SD卡!",Toast.LENGTH_LONG).show();
}
}</pre>
本文由用戶 mxd2 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!