Java 如何将图像名称和坐标保存到save.txt文件中

Java 如何将图像名称和坐标保存到save.txt文件中,java,arrays,filewriter,Java,Arrays,Filewriter,你能告诉我我的文件编写器有什么问题吗?我想将图像的名称和图像坐标保存到文件save.txt。我有什么遗漏吗?我走对了吗?这是我的第二个项目。我的第一个想法是制作一个可以存储图像的数组 else if (savePicture.isPointInElement(clickX, clickY)){ //start of save code FileWriter fw = new FileWriter ("save.txt"); for (int i = 0; i < a

你能告诉我我的
文件编写器有什么问题吗?我想将图像的名称和图像坐标保存到文件
save.txt
。我有什么遗漏吗?我走对了吗?这是我的第二个项目。我的第一个想法是制作一个可以存储图像的数组

else if (savePicture.isPointInElement(clickX, clickY)){ //start of save code
    FileWriter fw = new FileWriter ("save.txt");
        for (int i = 0; i < arrayhat.numElements; i++){
            if (arrayhat.images[i].isShowing){
                fw.write("hat" + arrayhat.images[i].getXCenter() + " " + arrayhat.images[i].getYCenter() + " ");
            }
        }
        for (int i = 0; i < arrayblunt.numElements; i++){
            if (arrayblunt.images[i].isShowing){
                fw.write("blunt" + arrayblunt.images[i].getXCenter() + " " + arrayblunt.images[i].getYCenter() + " ");
            }
        }
        for (int i = 0; i < arraydealwithit.numElements; i++){
            if (arraydealwithit.images[i].isShowing){
                fw.write("dealwithit" + arraydealwithit.images[i].getXCenter() + " " + arraydealwithit.images[i].getYCenter() + " ");
            }
        }
        for (int i = 0; i < arrayweed.numElements; i++){
            if (arrayweed.images[i].isShowing){
                fw.write("weed" + arrayweed.images[i].getXCenter() + " " + arrayweed.images[i].getYCenter() + " ");
            }
        }
        fw.close();
        System.out.println("saved");
    }
    else if (loadPicture.isPointInElement(clickX,  clickY)){//start of load code
        Scanner sc = new Scanner (new File("save.txt"));
        for (int i = 0; i < arrayhat.numElements; i++){
            arrayhat.removeimage(arrayhat.images[i], grouphat);
        }
        for (int i = 0; i < arrayhat.numElements; i++){
            arrayblunt.removeimage(arrayblunt.images[i], groupblunt);
        }
        for (int i = 0; i < arrayhat.numElements; i++){
            arraydealwithit.removeimage(arraydealwithit.images[i], groupdealwithit);
        }
        for (int i = 0; i < arrayhat.numElements; i++){
            arrayweed.removeimage(arrayweed.images[i], groupweed);
        }
        while (sc.hasNext()){
            String word = sc.next();
            int x = sc.nextInt();
            int y = sc.nextInt();
            switch(word){
                case "hat":
                    arrayhat.addImage(x, y, grouphat);
                    break;
                case "blunt":
                    arrayblunt.addImage(x, y, groupblunt);
                    break;
                case "dealwithit":
                    arraydealwithit.addImage(x, y, groupdealwithit);
                    break;
                case "weed":
                    arrayweed.addImage(x, y, groupweed);
                    break;
            }
        }
        sc.close();
    }
else if(savePicture.ispointinement(clickX,clickY)){//开始保存代码
FileWriter fw=新的FileWriter(“save.txt”);
for(int i=0;i
这是我的贴纸课

public class sticker {

    public EZImage[] images;
    public int numElements = 0;
    public String filename;

    void arraysticker(EZImage image, String name, int x, int y){
        image = EZ.addImage(name, x, y);
    }
    public void addImage(int X, int Y, EZGroup group) {
        images[numElements] = EZ.addImage(filename, X, Y);
        group.addElement(images[numElements]);
        numElements++;
    }
    public sticker (int size, String file){
        filename = file;
        images = new EZImage[size];
    }
    public void removeimage(EZImage image, EZGroup group){
        if (containsElement(image)){
            group.removeElement(image);
            EZ.removeEZElement(image);
            image = null;
        }
    }
    public boolean containsElement(EZImage element){
        for(int i = 0; i < numElements; i++){
            if (element == images[i]){
                return true;
            }
        }
        return false;
    }
}
公共类贴纸{
公共图像[]图像;
公共整数=0;
公共字符串文件名;
void arraysticker(EZImage图像,字符串名称,int x,int y){
image=EZ.addImage(名称,x,y);
}
公共无效添加映像(int X、int Y、EZGroup){
images[numElements]=EZ.addImage(文件名,X,Y);
组元素(图像[元素]);
numElements++;
}
公共标签(整数大小,字符串文件){
文件名=文件;
图像=新图像[大小];
}
public void removeimage(EZImage图像,EZGroup组){
if(容器元素(图像)){
组。移除(图像);
EZ.removeEZElement(图像);
image=null;
}
}
公共布尔容器元素(EZImage元素){
对于(int i=0;i
您正在使用常规java数组

他们需要扩大党的阶级


严肃地说,这段代码是以“else”关键字开头的,根据前面的逻辑可能会被跳过:请告诉我们您的初始“else”块是否与条件匹配。

更清楚地描述您的问题,选择一个反映您确切问题的标题请告诉我们您的初始“else”是否与条件匹配块与配对,因为此代码可能被完全跳过:导致未写入任何文件。