2012-10-19 36 views
1

可能重复:
java.lang.IllegalArgumentException: contains a path separator如何上传文件使用相对路径

我试图上传我的SD卡,文件路径URL =“SD卡/文件夹/测试文件。文档”。我正在使用以下代码上传到服务器。

String url = path.getText().toString(); 
FileInputStream fis = openFileInput(url); 

这是给我的错误:

FATAL EXCEPTION: main 10-19 01:19:39.480: E/AndroidRuntime(7459): java.lang.IllegalArgumentException: File /sdcard/download/ABC.pdf contains a path separator. 

可以有一个人请告诉我如何把它做?

+0

是。它是它的重复。你可以给我语法如何访问它。重复的没有提供任何代码。 – ChanChow

回答

0

openFileInput(url);无法打开存储在SD卡上的文件。此方法用于打开与此Context的应用程序包关联的私人文件以供阅读。

您必须使用new File(path)方法创建或打开文件。然后使用适当的InputStream。可以参考下面的语法..

File dir = Environment.getExternalStorageDirectory(); 
File yourFile = new File(dir, "path/to/the/file/inside/the/sdcard.ext"); 
+0

我正在试图编码 File dir = Environment.getExternalStorageDirectory(); 文件f_path =新文件(dir,url); InputStream fis = null; fis = new BufferedInputStream(new FileInputStream(f_path)); 当我运行这个它返回我java.io.FileNotFoundException:/mnt/sdcard/sdcard/download/xyx.txt(没有这样的文件或目录) 你能告诉我什么是错的吗? – ChanChow