/**
* 计算年龄
* @Title: getAge
* @Description: TODO
* @param dateOfBirth yyyyMMdd
* @return
* @throws
*/
private int getAge(long dateOfBirth) {
Date dbDate = null;
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
try {
dbDate = (Date) dateFormat.parse(String.valueOf(dateOfBirth));
} catch (ParseException e) {
e.printStackTrace();
}
int age = 0;
Calendar born = Calendar.getInstance();
Calendar now = Calendar.getInstance();
if (dbDate != null) {
now.setTime(new Date());
born.setTime(dbDate);
if (born.after(now)) {
throw new IllegalArgumentException("Can't be born in the future");
}
age = now.get(Calendar.YEAR) - born.get(Calendar.YEAR);
if (now.get(Calendar.DAY_OF_YEAR) < born.get(Calendar.DAY_OF_YEAR)) {
age -= 1;
}
}
return age;
}
/**
* 删除比较老的LOG文件(删除指定天数之前的LOG文件)
* @Title: deleteFile
* @param saveDateNum log文件保存的天数
* @throws
*/
private void deleteFile(int saveDateNum){
Log.d(TAG, "deleteFile saveDateNum = " + saveDateNum);
if(saveDateNum == 0){
saveDateNum = 3;
}
List<String> dateList = new ArrayList<String>();
String rootPath = GlobalData.getInstance().appMainFolder;
String path = rootPath + "/Log_Test/";
Date date = new Date();
for(int i = 0 ; i < saveDateNum ; i ++){
// 获得日期
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
date = calendar.getTime();
// 删除文件
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
String fileName = formatter.format(date) + "_log.txt";
dateList.add(fileName);
}
Log.d(TAG, "deleteFile saveList = " + dateList);
File dirFile = new File(path);
File [] deleteFiles = dirFile.listFiles();
for(int j = 0 ; j < deleteFiles.length ; j ++){
File f = deleteFiles[j];
if(!dateList.contains(f.getName())){
Log.d(TAG, "deleteFile delete file name = " + f.getName());
if(f.exists()){
f.delete();
}
}
}
}