zoukankan      html  css  js  c++  java
  • Highgui.imwrite("/data/pic1111.png", mat)失败,且找不到报错

    ——》 Highgui.imwrite("/data/pic1111.png", mat)失败,且找不到报错。
    ok --》直接使用以下代码,自己保存mat,从而可以跟踪问题。
    // java自己写的 实现方法
    Bitmap bmp_new = Bitmap.createBitmap(mat.cols(), mat.rows(), Bitmap.Config.ARGB_8888);
    Utils.matToBitmap(mat, bmp_new, false); // Mat->Bitmap

    File f = new File("pic1111.jpg");
    if (f.exists()) {
    f.delete();
    }
    try {
    FileOutputStream out = new FileOutputStream(f);
    bmp_new.compress(Bitmap.CompressFormat.PNG, 90, out);
    out.flush();
    out.close();
    Log.i("SaveMat", "已经保存");
    } catch (FileNotFoundException e) {
    // TODO: handle exception
    Toast.makeText(this.context, e.getMessage()+"error1", 1).show();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    Toast.makeText(this.context, e.getMessage()+"error2", 1).show();
    }
    ——》 跟踪到问题 "Read-only file system"
    ref:http://stackoverflow.com/questions/10787942/android-read-only-file-system-ioexception
    找到问题:Because you are trying to write the file to root, you need to pass the file path to your file directory.
    File f = new File("pic1111.jpg");
    FileOutputStream out = new FileOutputStream(f);
    改为
    File f = new File(context.getFilesDir().getPath().toString()+"/pic1111.jpg");
    FileOutputStream out = new FileOutputStream(f);
    或者(!!推荐使用)
    FileOutputStream out = context.openFileOutput("pic11121.jpg", Context.MODE_PRIVATE);

  • 相关阅读:
    jmeter 建立一个扩展LDAP测试计划
    jmeter 构建一个Web测试计划
    python 练习 29
    python 练习 28
    Python 练习 31
    python 练习 30
    python 练习 26
    python 练习 25
    python 练习24
    python 练习 23
  • 原文地址:https://www.cnblogs.com/carl2380/p/4193007.html
Copyright © 2011-2022 走看看