1

これが私のシナリオです

  1. ユーザーが私のアプリからファイルをダウンロードします

  2. ユーザーがメニューボタンを押して、SDカードにあるダウンロード済みファイルに移動します

SDカードの場所にリンクするボタンを実装する方法を教えてください

以下は私のコードです。

File sdCard = Environment.getExternalStorageDirectory();
File dir = new File (sdCard.getAbsolutePath() + "/downloaded/stuffs");
dir.mkdirs();

File file = new File(dir, fileName);

InputStream input = new BufferedInputStream(url.openStream());
FileOutputStream f = new FileOutputStream(file);
4

2 に答える 2

2

ボタンハンドラー

myButton.setOnClickListener(new OnClickListener() {

public void onClick(View v) {
    Intent intent = new Intent( this, FileList.class);
    startActivity(intent);

 }
});

そして、そのディレクトリ内のすべてのファイルを表示するには、次のようにクラスFileListを定義します

public class FileList extends ListActivity 
{
    private File file;
    private List<String> myList;

    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);

        myList = new ArrayList<String>();   

        File sdCard = Environment.getExternalStorageDirectory();
        File dir = new File (sdCard.getAbsolutePath() + "/downloaded/stuffs");

        File list[] = dir.listFiles();

        for( int i=0; i< list.length; i++)
        {
            myList.add( list[i].getName() );
        }

        setListAdapter(new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_1, myList ));

    }
}
于 2012-08-03T08:09:27.687 に答える
0

この Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);を試してください。

于 2012-08-03T10:48:32.900 に答える