Xamarin:获取资产文件夹中文件的绝对路径

时间:2016-05-13 13:50:23

标签: xamarin xamarin.android

我只想在 Visual Studio Xamarin(2015)中的Assets文件夹中获取我的“test.pdf”的绝对路径。我该怎么做?

            using System;
            using System.IO;
            using Android.App;
            using Android.Content;
            using Android.Widget;
            using Android.OS;
            using Com.Artifex.Mupdfdemo;
            using Java.IO;
            using File = Java.IO.File;

            var file = (File)fileFromAsset(this, "test.pdf");
            var uri = Android.Net.Uri.Parse(file.AbsolutePath);
            var intent = new Intent(this, typeof(MuPDFActivity));
            intent.SetFlags(ActivityFlags.NoHistory);
            intent.SetAction(Intent.ActionView);
            intent.SetData(uri);
            this.StartActivity(intent);

但是在第二行我面临着(file.AbsolutePath)的错误:

'object'不包含'AbsolutePath'的定义,也没有扩展方法'AbsolutePath'接受类型'object'的第一个参数(你是否缺少using指令或汇编引用?) PdfTest2 F:\ Projects \ PdfTest2 \ PdfTest2 \ PdfTest2 \ MainActivity.cs

1 个答案:

答案 0 :(得分:0)

我应该在 Java.IO.File 中使用 AbsolutePath()来获取文件的绝对路径。

然后我将我的文件从Assets文件夹中放入Java.IO.File对象(文件)中的强制转换。

            File file = (File)fileFromAsset(this, "test.pdf");
            var uri = Android.Net.Uri.Parse(file.AbsolutePath);