我正在使用处理3.5.4。
我正在尝试将屏幕图像 save()
保存到 data/frames
(相对于我的草图文件)。我使用的代码在 Java 模式下工作没有任何问题(我可以看到图像保存到我的计算机上的正确文件夹中),但是当在我的 Android 设备上运行它时,我得到 java.lang.IllegalArgumentException: File data/frames/frameasdf.tif 包含路径分隔符
。我猜这是因为文件存储系统的差异。
除了将图像直接保存到草图文件夹中之外,还有什么方法可以避免路径分隔符?
我是 Java 新手(刚刚从 Javascript 转向更专业的开发),因此如果可能的话,请链接到任何有用的文档。
PImage drawing;
void setup() {
size(displayWidth, displayHeight);
}
boolean clicked = false;
String name = "asdf";
void mouseReleased() {
clicked = true;
}
void draw() {
background(255);
if(drawing != null) {
image(drawing, 0, 0);
}
fill(0);
noStroke();
ellipse(mouseX, mouseY, 50, 50);
if(clicked) {
save("data/frames/frame" + name + ".tif");
drawing = loadImage("frames/frame" + name + ".tif");
}
clicked = false;
}
这是我的代码的缩短版本。这是一个简单的程序,每当您单击时,都会在屏幕上添加一个点。
我确实计划在框架文件夹中保存多个框架。
最佳答案
我不太明白你的问题。您是否尝试将文件保存在特定应用程序文件或共享存储文件中?可以使用 Context.getExternalFilesDirs() 获取不同存储系统的根文件,该方法返回包含文件的 vector 。
您可以在此处开始阅读文档:Android storage
关于java - Android 处理 |保存() "File contains a path separator",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61053606/