如何在外部打开文件?

时间:2012-06-09 18:03:34

标签: android

我有像.doc .pdf .excel这样的文件...我想在外部打开它们。

我尝试了intent.ACTION_VIEW,但它在浏览器中打开了。

如何使用用户拥有的应用程序作为默认处理程序打开它们?

File file = new File(Globals.SAVE_PATH + filename);
openFile(file.toURI());


public void openFile(URI uri) {
        Intent i = new Intent(?????);
        i.setData(Uri.parse(uri.toString()));
        startActivity(i);
    }

3 个答案:

答案 0 :(得分:1)

我相信这篇文章会回答你的问题:SO: Open another application from your own (intent)

答案 1 :(得分:1)

您可能会发现this文章很有用。你必须记住的是,如果手机只有一个能够打开文件的应用程序,它将自动启动。

答案 2 :(得分:0)

感谢您的回答,但我发现这种方法最简单。

String path="File Path";

Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
File file = new File(path);

MimeTypeMap mime = MimeTypeMap.getSingleton();
String ext=file.getName().substring(file.getName().lastIndexOf(".")+1);
String type = mime.getMimeTypeFromExtension(ext);

intent.setDataAndType(Uri.fromFile(file),type);

startActivity(intent);