/** TODO: write data */ public void writeData(String strData, String fileName, int type) { String filePath = null; OutputStreamWriter myOutWriter = null; FileOutputStream fOut = null; if (type == TYPE_CALL_LOG) { filePath = dataUtils.getRootPath() + FOLDER_CALL_LOG + "/" + fileName; } else if (type == TYPE_CONTACT) { filePath = dataUtils.getRootPath() + FOLDER_CONTACT + "/" + fileName; } else if (type == TYPE_SMS) { filePath = dataUtils.getRootPath() + FOLDER_SMS + "/" + fileName; } try { File myFile = new File(filePath); myFile.createNewFile(); fOut = new FileOutputStream(myFile, true); myOutWriter = new OutputStreamWriter(fOut); myOutWriter.append(strData); } catch (Exception e) { e.printStackTrace(); } finally { try { myOutWriter.close(); fOut.close(); } catch (IOException e) { e.printStackTrace(); } } // end-try } // end-func
/** TODO: create app's folder */ public void createFolderApp() { if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { Log.d("MyApp", "No SDCARD"); } else { // root's app's folder File directory = new File(dataUtils.getRootPath()); if (directory.exists()) { deleteBookFolder(directory); } directory.mkdir(); // call log folder File calllog = new File(dataUtils.getRootPath() + FOLDER_CALL_LOG + "/"); calllog.mkdir(); // contact folder File contact = new File(dataUtils.getRootPath() + FOLDER_CONTACT + "/"); contact.mkdir(); // sms folder File sms = new File(dataUtils.getRootPath() + FOLDER_SMS + "/"); sms.mkdir(); } }
/** TODO: delete file data */ public boolean deleteFileFromSdcard(String fileName, int type) { String filePath = null; if (type == TYPE_CALL_LOG) { filePath = dataUtils.getRootPath() + FOLDER_CALL_LOG + "/" + fileName + "/"; } else if (type == TYPE_CONTACT) { filePath = dataUtils.getRootPath() + FOLDER_CONTACT + "/" + fileName + "/"; } else if (type == TYPE_SMS) { filePath = dataUtils.getRootPath() + FOLDER_SMS + "/" + fileName; } File file = new File(filePath); boolean deleted = file.delete(); return deleted; } // end-func
/** TODO: read data */ public String readFileSMS(String fileName) { String data = ""; FileReader file = null; BufferedReader br = null; try { String sCurrentLine; file = new FileReader(dataUtils.getRootPath() + FOLDER_SMS + "/" + fileName); br = new BufferedReader(file); while ((sCurrentLine = br.readLine()) != null) { data += sCurrentLine + "\n"; } } catch (IOException e) { e.printStackTrace(); } finally { try { if (br != null) { br.close(); } if (file != null) { file.close(); } } catch (IOException ex) { ex.printStackTrace(); } } return data; }
/** TODO: get list files SMS to upload (not today) */ public List<String> listFileSmsToUpload() { List<String> listFile = new ArrayList<String>(); File directory = new File(dataUtils.getRootPath() + FOLDER_SMS + "/"); File[] fList = directory.listFiles(); String sToday = MyUtils.stringFileDate(); for (File file : fList) { if (!file.getName().contains(sToday)) { listFile.add(file.getPath()); } } return listFile; }
/** TODO: read data */ public List<ItemCallLog> readFileCallLog(String fileName) { List<ItemCallLog> listData = new ArrayList<ItemCallLog>(); ItemCallLog item = null; FileReader file = null; BufferedReader br = null; try { String sCurrentLine; file = new FileReader(dataUtils.getRootPath() + FOLDER_CALL_LOG + "/" + fileName); br = new BufferedReader(file); while ((sCurrentLine = br.readLine()) != null) { item = new ItemCallLog(); String[] stk = sCurrentLine.split("="); item.setCallNumber(stk[0]); item.setNewNumber(stk[1]); listData.add(item); } } catch (IOException e) { e.printStackTrace(); } finally { try { if (br != null) { br.close(); } if (file != null) { file.close(); } } catch (IOException ex) { ex.printStackTrace(); } } return listData; }