Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Lejos NXT:绘制线并保存图像_Java_Lejos Nxj - Fatal编程技术网

Java Lejos NXT:绘制线并保存图像

Java Lejos NXT:绘制线并保存图像,java,lejos-nxj,Java,Lejos Nxj,我成功地制作了一个LineFollower程序;增加了“记忆”机器人刚刚跟随的路径的功能。 下一步是绘制该路径并将图像文件保存在砖块中,然后使用NxjBrowse在PC中读取。 我想我会尝试使用经典的java方法,使用BuffereImage并使用ImageIO保存,但它不起作用,而且它一直给我java堆空间: 在那之后,我做了一些研究,发现有一个类叫做,所以我创建了一个图像对象,使用GetGraphics并尝试在其上绘制;并使用FileOutputStream保存,以下是我的代码: Imag

我成功地制作了一个LineFollower程序;增加了“记忆”机器人刚刚跟随的路径的功能。 下一步是绘制该路径并将图像文件保存在砖块中,然后使用NxjBrowse在PC中读取。 我想我会尝试使用经典的java方法,使用BuffereImage并使用ImageIO保存,但它不起作用,而且它一直给我java堆空间:

在那之后,我做了一些研究,发现有一个类叫做,所以我创建了一个图像对象,使用GetGraphics并尝试在其上绘制;并使用FileOutputStream保存,以下是我的代码:

Image img = Image.createImage(300, 300);

Graphics g = img.getGraphics();
g.drawLine(0, 0,  100, 200);

File monFichier = new File("Image2.png");
FileOutputStream fOut = null;

try {
    fOut = new FileOutputStream(monFichier);
} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
byte[] b = img.getData();
try {
    fOut.write(b);
    fOut.close();

} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
问题是,当我连接到我的电脑时,它会写入无法识别为图像的文件;我无法打开创建的文件(已检查大小,不是空的)。 我不知道储蓄是错误的还是我用来画画的方法是错误的。 问题的简短版本:如何使用LEJO绘制线条并将结果保存为图像文件? 多谢各位

更新:

我使用ImageOutputStream而不是FileOutputStream;现在它给了我“Java堆空间”错误;在它陷入“链接”一段时间后

Java Heap Space
Java.lang.OutOfMemoryError
Image.getData()是对基础DataBuffer的访问,不是有效的PNG或BMP图像。 尝试ImageIO.write(img,“png”,outputfile)。

Image.getData()是对基础数据缓冲区的访问,不是有效的png或BMP图像。
尝试ImageIO.write(img,“png”,outputfile)。

是否刷新并关闭该文件?解决了“空文件”问题,结果我忘记关闭它,谢谢。但不幸的是;创建图像文件不是正确的想法;即使是.png;它没有被识别为“图像”…你刷新并关闭了文件吗?解决了“空文件”问题,结果我忘了关闭它,谢谢。但不幸的是;创建图像文件不是正确的想法;即使是.png;它没有被识别为“图像”…谢谢。但我试过了。它给了我Java堆空间错误。谢谢。但我试过了。它给出了Java堆空间错误。