[英]Why Isn't My FileOutputstream Writing to a File?
我是一个 Android 应用程序的初学者,该应用程序使用 gcacace SignaturePad 库来捕获我的用户的签名。 我的目标是获取签名,将其压缩为 JPEG,然后将该信息写入用户手机上的文件中,以便稍后访问该图片。
我目前在运行代码时没有出现错误或崩溃,但在我的设备(Google Pixel 2)上测试应用程序时没有创建目录或文件。 谁能帮我弄清楚问题出在哪里? 整个早上我都把头靠在墙上,但仍然不知道。
ContextWrapper cw = new ContextWrapper(getApplicationContext());
File directory = cw.getDir("images", Context.MODE_PRIVATE);
if (!directory.exists()) {
directory.mkdirs();
}
File myPath = new File(directory, "1.jpg");
FileOutputStream fOut = null;
try {
fOut = new FileOutputStream(myPath);
} catch (Exception e) {
e.printStackTrace();
}
signaturePad.getSignatureBitmap().compress(Bitmap.CompressFormat.JPEG, 90, fOut);
Bitmap signature = signaturePad.getSignatureBitmap();
int bytes = signature.getByteCount();
try {
fOut.write(bytes);
fOut.flush();
fOut.close();
} catch (IOException ex) {
ex.printStackTrace();
}
Toast.makeText(activity_signature_pad.this, "Signature Saved", Toast.LENGTH_SHORT).show();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.