Xamarin在我的设备上找不到文件

时间:2018-04-03 16:56:57

标签: c# visual-studio xamarin

我的Android Manifest中标记了READ_EXTERNAL_STORAGE权限。我已经检查了我的Android手机(Android 7.0),该文件肯定在“/ storage / emulated / 0 / Incoming /”目录中。但是,当我尝试在Xamarin中检测到该文件时,它表示找不到它。我在尝试打开它之前没有收到任何错误。

字符串文件显示路径和文件名“/storage/emulated/0/Incoming/item_list.csv”,这与我要查找的内容一致。

我已将它安装在一个格式化的设备上,它工作正常但由于某些原因,当我想在我的手机Android设备上测试任何东西时,我得到了这个问题。

我在StackOverflow上对此进行了研究,大多数答案都指向了错误的路径。我改变了路径以包含AbsolutePath属性,但它没有用。

谢谢,

Mr.Rob

    private string[] Load_Item_File()
    {
        string[] _result = new string[1000]; 

        try
        {
            string path = Path.Combine((string)Android.OS.Environment.ExternalStorageDirectory, "Incoming");
            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);

                _result[0] = "ERROR: DIRECTORY LOCKED";
                return _result;
            }

            string file = Path.Combine((string)path, "item_list.csv");
            if (!File.Exists(file))
            {

                _result[0] = "ERROR: FILE NOT FOUND";
                return _result;
            }

            _result = File.ReadAllLines(file,encoding:Encoding.ASCII);

            return _result;

        }
        catch (Exception ex)
        {
            string errorMessage = ErrorLog.CreateErrorMessage(ex);
            ErrorLog.LogFileWrite(errorMessage);

            _result[0] = "ERROR: ISSUE WHEN READING FILE";
            return _result;
        }
    }

0 个答案:

没有答案