Android 安卓:点击按钮检查是否存在并保存文件

Android 安卓:点击按钮检查是否存在并保存文件,android,button,android-edittext,Android,Button,Android Edittext,我希望该应用程序可以实现以下功能 1.将文件名放入ediTtext 2.按下启动按钮, 如果文件存在,则写入该文件;如果不存在,则创建该文件 3.按下停止按钮, 进程将停止,editText的内容将返回到文件名 我已经完成了保存文件部分,但不知道如何检查是否存在:p,希望能得到一些代码供参考! 谢谢 以下是保存文件的代码: //////////////////////////////////// private String TAG = "MyActivity"; private

我希望该应用程序可以实现以下功能 1.将文件名放入ediTtext 2.按下启动按钮, 如果文件存在,则写入该文件;如果不存在,则创建该文件 3.按下停止按钮, 进程将停止,editText的内容将返回到文件名

我已经完成了保存文件部分,但不知道如何检查是否存在:p,希望能得到一些代码供参考! 谢谢

以下是保存文件的代码:

        ////////////////////////////////////
private String TAG = "MyActivity";
private WifiManager wifiManager;
List<ScanResult> list;
private Runnable runnable;
private Handler handler;




@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_wifi_list);        
    handler=new Handler();
    runnable=new Runnable() {
        @Override
        public void run() {
            init();
            handler.postDelayed(this, 3000);
        }
    }; 

    handler.post(runnable);
}




private void init() {
    wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    list = wifiManager.getScanResults();
    ListView listView = (ListView) findViewById(R.id.listView);     
    String wifiInfo = "";
    if (list == null) {
        Toast.makeText(this, "wifi is closed!", Toast.LENGTH_LONG).show();
    }else {
        for (int i = 0; i<list.size();i++){
            ScanResult scanResult = list.get(i);
            String bssid = scanResult.BSSID;
            String ssid = scanResult.SSID;
            int strength = Math.abs(scanResult.level);
            wifiInfo = wifiInfo + String.format("%25s,%20s,%5d\n", bssid,ssid,strength);

        }
        listView.setAdapter(new NewAdapter(this,list));
    }
    writeToFile(wifiInfo,"WifiList_Info.txt");
    Toast toast = Toast.makeText(this, "new record", Toast.LENGTH_SHORT);
    toast.setGravity(Gravity.CENTER, 0, 0);
    toast.show();
}



private void writeToFile(String data,String fileName){

    File file = null;
    OutputStream output = null;
    byte buffer[] = null;   

       try{ 

        File path = Environment.getExternalStorageDirectory();
        file = new File(path,fileName);
        if(!file.exists())
            file.createNewFile();
        output = new FileOutputStream(file, true);
        buffer = data.getBytes();
        output.write(buffer);
        output.flush();
        output.close();        
           } 
          catch(Exception e){              e.printStackTrace(); 
          } 
}



 public void onClick_startEvent(View view) {
     EditText editText = (EditText)findViewById(R.id.et1);
     editText.setText("writing into the file", TextView.BufferType.NORMAL);
}
////////////////////////////////////
私有字符串TAG=“MyActivity”;
私人WifiManager WifiManager;
名单;
私人可运行;
私人经办人;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u wifi\u列表);
handler=新的handler();
runnable=新的runnable(){
@凌驾
公开募捐{
init();
handler.postDelayed(这个,3000);
}
}; 
handler.post(可运行);
}
私有void init(){
wifiManager=(wifiManager)getSystemService(Context.WIFI_服务);
list=wifiManager.getScanResults();
ListView ListView=(ListView)findViewById(R.id.ListView);
字符串wifiInfo=“”;
if(list==null){
Toast.makeText(此“wifi已关闭!”,Toast.LENGTH_LONG.show();
}否则{

对于(int i=0;i用于检查文件是否存在,请使用:

File tempFile = null;

tempFile = new File(filePath);
if(!tempFile.exists())
    //do your work

我看到您已经在writeToFile方法中编写了检查文件存在性的代码…如果(!file.exists())file.createNewFile();…您是否面临此代码的任何问题?您的代码中有正确的答案:
file=new file(路径,文件名);如果(file.exists())
@RajenRaiyarela现在我想写多个文件,我可以输入文件名,所以我添加了一个edittext部分,可以手动输入文件名,我还添加了一个按钮,当按下按钮时,它可以开始写文件,如果我想实现这个功能,我需要在哪里更改?谢谢:))
File myFile = new File(your_file_path);


if(myFile.exists())
   {

           // file exists
    }


else

{

   // file doesn't exists, so create a new file here.

}