XXXX为序列号,可以认为是随着文件递增的int,例如1234com171201的形式,代码如下:
MainActivity中 :
package com.example.wupb.testcreatnewfilebytime; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.TextView; import java.io.File; public class MainActivity extends AppCompatActivity { private static final String TAG="BBBBB"; private File dir; private File file; private String mYYMMDD; private String lastFileName; File [] fileLists; private int sericiousNum; private String baseName; String basePath; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initData(); scanFile(); } public void initData(){ baseName = "WuPengBo"; sericiousNum = 0; basePath= getFilesDir().getPath(); dir =FileUtils.creatDir(basePath + "/abc"); mYYMMDD=FileUtils.getYYMMDD(); } public void creat(View v){ scanFile(); if(fileLists.length==0){ sericiousNum = 0000; Log.i(TAG,"int sericiousNum =="+sericiousNum); }else { lastFileName = fileLists[fileLists.length-1].getName(); if(lastFileName.matches("[0-9]{4}WuPengBo[0-9]{6}\\.txt")) { sericiousNum = Integer.parseInt(lastFileName.substring(0, 4)); Log.i(TAG, "sericiousNum ==" + sericiousNum); } } sericiousNum++; String finalName = String.format("%04d",sericiousNum) + baseName + mYYMMDD + ".txt"; Log.i(TAG,"finalName = "+finalName); file = FileUtils.createFile(basePath + "/abc/",finalName); Log.i(TAG,"file.getName ==" +file.getName()); } public void scanFile( ){ fileLists= dir.listFiles(); for (int i = 0; i <fileLists.length ; i++) { Log.i(TAG,"fileName is "+fileLists[i].getName().toString()); lastFileName = fileLists[fileList().length-1].getName(); } } }
FileUtils:
package com.example.wupb.testcreatnewfilebytime; import android.util.Log; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Calendar; import static android.content.ContentValues.TAG; /** * Created by wupb on 2017/12/2. */ public class FileUtils { public static File creatDir(String path){ File file = new File(path); if(file.exists()){ return file; } file.mkdirs(); return file; } public static String getYYMMDD(){ Calendar calendar=Calendar.getInstance(); SimpleDateFormat s=new SimpleDateFormat("YYMMdd"); String result = s.format(calendar.getTime()); Log.e(TAG, "getYYMMDD:"+result); return result; } public static File createFile(String path,String name){ File file = new File(path+name); if(file.exists()){ return file; } try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } return file; } }