如何编写扫描仪代码来加载之前保存在 save.txt 中的内容?

Posted

技术标签:

【中文标题】如何编写扫描仪代码来加载之前保存在 save.txt 中的内容?【英文标题】:How to write a scanner code to load what was previously saved in save.txt? 【发布时间】:2015-10-19 01:19:52 【问题描述】:

我的目标是加载 save.txt 文件中的内容。我该怎么写?我不确定我的编写代码是否正在写入 save.txt。可以看看吗?

else if (savePicture.isPointInElement(clickX, clickY))
    FileWriter fw = new FileWriter("save.txt");
    for (int i = 0; i < arraysticker.length; i++)
        if (arraysticker[image]!=null)
            String name;
            int x,y;
            name = sticker.getname();
            x = sticker.getx();
            y = sticker.gety();
            fw.write(name + " " + x + " " + y + "\n");
        
    

这是我添加的“贴纸”代码之一。

if (hatSoundPlay) //if hatSoundPlay is true
    hatsound.play(); //and a hatsound will play
    sticker sticker1 = new sticker();//creates a new sticker1
    sticker1.arraysticker(hatPicture, "hat.png", clickX, clickY);//places sticker
    image ++;//increments image by 1
    arraysticker[image] = sticker1;//puts sticker 4 into the array
    sticker11 = true;

【问题讨论】:

所以它是空格分隔符String(更好的洞name不包含空格)。您也许可以使用 String#split 分隔给定行中的每个元素,以便您可以重构 sticker 对象 此代码不保存任何内容,因为需要刷新 FileWriter 才能将数据保存到文件 (fw.flush())。 我用 fw.flush() 替换了 fw.close() 但它仍然没有保存。我打开了save.txt,但是点击保存按钮后里面什么都没有。 【参考方案1】:
FileWriter fw = new FileWriter("save.txt");
for (int i = 0; i < arraysticker.length; i++)
    if (arraysticker[image]!=null)
        String name;
        int x,y;
        name = sticker.getname();
        x = sticker.getx();
        y = sticker.gety();
        fw.write(name + " " + x + " " + y + "\n");
    

**fw.flush();
fw.close();**

【讨论】:

以上是关于如何编写扫描仪代码来加载之前保存在 save.txt 中的内容?的主要内容,如果未能解决你的问题,请参考以下文章

保存后重新加载

如何在设备 Flutter 中保存缓存

如何在c#中扫描图像并以正常大小保存

如何在 VC.m 尝试加载之前保存使用 drawRect 绘制的图像?

文件上传必须在病毒扫描之前存储吗?

如何编写从物理扫描仪设备扫描图像的 java 代码? [关闭]