当前位置: 首页 > 知识库问答 >
问题:

无法保存画布数据

章承基
2023-03-14

07-24 12:36:23.742: W/System.err(10386):java.io.IO异常:拒绝许可07-24 12:36:23.750: W/System.err(10386): atjava.io.File.createNewFileImpl(本地方法)07-24 12:36:23.750: W/System.err(10386): atjava.io.File.createNewFile(File.java:1257)07-24 12:36:23.750: W/System.err(10386): atcom.android.SignaturePage.文件写入(SignaturePage.java:414)07-24 12:36:23.750: W/System.err(10386):在com.android.SignaturePage$2.on点击(SignaturePage.java:132)07-24 12:36:23.750: W/System.err(10386):在android.view.View.perform点击(View.java:2485)07-24 12:36:23.750: W/System. err(10386):在android. view。查看$PerformClick. run(View. java: 9080)07-24 12:36:23.750: W/System. err(10386): at android. os.Handler. handleCallback(Handler. java: 587)07-24 12:36:23.750: W/System. err(10386): at android. os.java: 92)07-24 12:36:23.750: W/System. err(10386): at android. os.循环(Loop. java: 130)07-24 12:36:23.750: W/System. err(10386): at android. app.ActivityThread. main(ActivityThread. java: 3687)07-24 12:36:23.750: W/System. err(10386): at java. lang.反射。方法调用Native(本地方法)07-24 12:36:23.750: W/System. err(10386): at java. lang.反射。java: 507)07-24 12:36:23.750: W/System. err(10386): at com. android. interal. os.ZygoteInit$method odAndArgsCaller. run(ZygoteInit. java: 867)07-24 12:36:23.750: W/System. err(10386):在com. android. interal. os。java: 625)07-24 12:36:23.750: W/System. err(10386): at dalvik. system.NativeStart. main(本机方法)

出现错误的代码段

public  void FileWrite(File aPath,String aBody)
{
    try 
    {
        //System.out.println("@@@@ Inside Try FileWrite @@@@");
        Log.e("BEFORE FILE","BEFORE FILE");
        aPath.createNewFile();
        Log.e("AFTER FILE","BEFORE AFTER");
        PrintWriter out1 = new PrintWriter(aPath);
        out1.write(aBody);  
        //System.out.println (aBody.trim());
        out1.flush();
        out1.close();
    }
    catch (IOException ioe)
    {
        //System.out.println("@@@@ Inside Catch FileWrite @@@@"); 
        ioe.printStackTrace();
    }
}

清单文件具有以下权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

请帮我解决这些问题<代码>磷灰石。createNewFile() 是发生错误的行

共有2个答案

滑令
2023-03-14
 File SignSave=new File("data/data/com.myapp.android.creditcardreader/SignConfirmation"); 
  1. 通常访问此路径需要根权限
  2. 你忘记了data中的第一个/File(/data/...);

编辑:

您应该将文件存储在sdCard中。您可以通过以下方式访问sdCard的根:

File root = Environment.getExternalStorageDirectory()
File aPath = new File (root, "confirmation");
aPath.createNewFile();
浦德义
2023-03-14

添加代码

 类似资料:
  • 好不容易在画布中绘制出酷炫的图形,应该把它保存起来吧。但不幸的是,画布中的这些图形本身不是真正的图片,不能直接保存。不幸中的万幸,Canvas API提供了toDataURL()方法,可以把画布中的图形转换为图片。 默认情况下,toDataURL()方法把图形转变成base64编码格式的png,然后返回Data URL数据。可以给toDataURL()传入MIME类型的参数,将画布转变成其它格式的

  • 我有一个带有背景图像的HTML5画布元素。用户被允许在图像上绘制,然后需要保存完整的画布元素与背景。我使用下面的代码保存部分,但它只得到画布绘图,而不是背景图像。我还可以做什么来获得背景图像? 更新: 我的HTML 我有上面的div在我的HTML页面。然后我动态地创建画布并在其上绘制。这是一个有点长的代码。

  • 我目前正在尝试跟踪一个人的动作,并将其保存到数据库中。 在我的网页上有一个画布,它允许用户使用鼠标进行绘画。我希望能够保存用户在绘画时所做的动作,以便我能够重新跟踪绘画时所做的每一个动作。 我自己的想法是,每当用户在画布中单击鼠标时,坐标将被保存,直到用户释放鼠标按钮。另一个解决方案是,在画布上每点击3-4次,就保存一张画布的图像,这样你就可以看到绘制过程。 有没有人有更好的解决方案,或者关于如何

  • 在画布上画画是非常好的。即使橡皮擦也能工作得很好。问题是当画布保存为图像时,它画的是黑线,而不是橡皮擦。 为了更好地理解,我添加了屏幕、镜头和代码。 1.在擦除图的同时- 我不明白为什么橡皮移动被替换为黑色,而保存画布作为一个图像。

  • 这是使用电子邮件密码注册帐户的所有代码,保存验证电子邮件,将用户数据保存到Firestore数据库中。只有Firestore数据库无法运行。 else { Toast.makeText(register.this, “Error ! ” task.getException().getMessage(), Toast.LENGTH_SHORT).show();progressBar.setVisib