Intent for editing plain text file with the installed file editor (if any)
Asked Answered
W

1

11

I want my app to open a plain text file with any of the file editors installed on my terminal, but I keep getting this exception:

ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.EDIT dat=file:///sdcard/folder/file.txt } 

First I thought that I have no File editor installed, but if I use ASTRO file manager, I can get to open the file both with "File Editor" and "QuickOffice", so I think the problem is that I'm not using the right code...

Here is the code

Intent intent = new Intent(Intent.ACTION_EDIT); 
Uri uri = Uri.parse("file:///sdcard/folder/file.txt"); 
intent.setDataAndType(uri, "plain/text"); 
startActivity(intent);

What is more surprising is that if I use the path of a file that doesn't exist, it keeps raising the same exception...

Thanks

Waterish answered 27/12, 2010 at 15:37 Comment(2)
How about "Intent intent = new Intent(Intent.ACTION_VIEW);" ?Pyromania
This also helped. I was wrong with the MIME type and the action. Thanks :)Waterish
F
17

The MIME type is text/plain.

Followthrough answered 27/12, 2010 at 18:7 Comment(2)
By the way... I'm still wondering why it needs the MIME type set. Shouldn't it guess the type from the extension of the file?Waterish
@Pedriyoo: There is no extension->MIME type conversion in most of Android.Followthrough

© 2022 - 2024 — McMap. All rights reserved.