くうと徒然なるままに

モバイルアプリを作りながらバックエンドも作っています。

Xamarin.Android で 指定したフォルダのファイル一覧を取得する

特定のフォルダに存在するファイル一覧を取得したいことはたまによくあると思います。

コード

namespace AndroiFolder
{
    [Activity(Label = "AndroiFolder", MainLauncher = true)]
    public class MainActivity : Activity
    {
        private static string GetPathForDCIM()
        {
            // DCIM フォルダを取得してる
            return Environment.GetExternalStoragePublicDirectory(Environment.DirectoryDcim).Path;
        }

        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            // フォルダのインスタンスを取得
            var DCIMFolder = new File(GetPathForDCIM());
            // ファイルの一覧を取得
            var fileList = DCIMFolder.ListFiles().Where(file => file.Name.EndsWith(".js")).ToList();
            fileList.ForEach(file => Console.WriteLine($"Path: {file.Name}"));
        }
    }
}

結果

取れてる!

f:id:kuxumarin:20171115221332p:plain