Ionic-从URI读取文件

时间:2018-08-27 11:38:14

标签: javascript angular typescript ionic-framework uri

我的应用程序的用户可以使用Ionic Native - Crop选择和裁剪图像。他们裁剪完图片后,我将获得该图片的URI,例如:

file:///storage/emulated/0/Android/data/com.myApp/cache/1535369478970-cropped.jpg?1535369482232

我想使用Ionic's File API,因为它有一个方法readAsDataURL(path, file),它将文件转换为base64编码的数据URL,这正是我真正需要的。

但是,如何正确地将pathfile从上面的文件的URI中分离出来,以便满足readAsDataURL(path, file)的要求?

我也不知道.jpg?1535369482232后面的这些数字的含义,也不知道文件的名称,或者文件在 iOS 上是否具有其他目录,因为上面的URI是通过使用Android模拟器的测试提供的。

P.S。我尝试仅通过上面的路径调用该方法,而没有将文件名作为第二个参数传递,但是出现以下错误:

{"code":13,"message":"input is not a directory"}

如何为iOS和Android文件路径获得所需的结果?

1 个答案:

答案 0 :(得分:0)

您的路径引用了'cacheDirectory'this.file.cacheDirectory.

获取文件名。

const pathsplit = "file:///storage/emulated/0/Android/data/com.myApp/cache/1535369478970-cropped.jpg".split('/');
filename = pathsplit[pathsplit.length-1];