2012-04-12 15 views
0

私はこれまでに作成したフォルダの下にある特定のファイルを削除するコードを持っています。ユーザーがクリックしたファイルを削除するだけです。 myfileは」私が使用して、このクラスに別のクラスからパラメータを渡すようにしようとしてきたが、それは私は選択したSDカード上のファイルを削除する

file_name = getIntent().getStringExtra("fileName"); 
String fileName = Environment.getExternalStorageDirectory() +"/pass/"+file_name; 
        File myFile = new File(fileName); 
        if(myFile.exists()) 
         myFile.delete(); 

を動作しません。このクラスは

 if (position == 0) { 
// pass parameters file name & file url 
Intent s = new Intent(getApplicationContext(),PDFListActivity.class); 
s.putExtra("fileName","myfile.pdf"); 
    startActivity(s); 
ファイル名を渡し

public void function1(int id){ 
       Toast.makeText(this, "function 1 called", Toast.LENGTH_SHORT).show(); 
       String fileName = Environment.getExternalStorageDirectory() +"/pass/myfile.pdf"; 
       File myFile = new File(fileName); 
       if(myFile.exists()) 
        myFile.delete(); 

あなたの最初のクラス(活動)から

+0

ファイルを検索し、チェックするために使用されている文字列のための出力をログに記録します? –

答えて

1

あなたはgetAbsolutePath()として

String fileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/pass/" + file_name;

を試してみましたが、ルートディレクトリへの絶対パスを返します。彼らは両方のインスタンスで同じである場合

また、あなたがデータを渡しているか

+0

これは 'String fileName = Environment.getExternalStorageDirectory()+"/pass/"+ file_name;の代わりに' fileName = Environment.getExternalStorageDirectory()。getAbsolutePath()+ "/ pass /" + file_name; ' – AliDeV

1

あなたはこのようにしている:::

Intent i = new Intent(thisActivity.this,NextActivity.class); 
i.putExtra("filename",fileName); 
startActivity(i); 
関連する問題