0

我最近开始从 coursera.org 学习如何用 Java 编写代码。但我无法进一步取得进展,因为我无法弄清楚我的代码不起作用。

此代码更改名称并使用新名称保存文件。

public class Copyfile {

public void doSave()
{
    DirectoryResource dr = new DirectoryResource();
    for(File f : dr.selectedFiles())
    {
        ImageResource ir = new ImageResource(f);
        String name = ir.getFileName();
        ImageResource r = new ImageResource(ir);
        String x = "copy-"+name;
        r.setFileName(x);
        r.save();
        System.out.println(name);
    }
}

}

其中,这段代码没有。尽管它非常相似。

public class GREyscale {
public ImageResource convertImage(ImageResource inimage)
{
  ImageResource outimage = new ImageResource(inimage.getWidth(), inimage.getHeight());
  for(Pixel pixel : outimage.pixels())
  {
      Pixel inPixel = inimage.getPixel(pixel.getX(),pixel.getY());
      int val =(inPixel.getRed() + inPixel.getBlue() + inPixel.getGreen())/3;
      pixel.setRed(val);
      pixel.setBlue(val);
      pixel.setGreen(val);
    }

    return outimage;
}

public void convert()
{
  DirectoryResource dr = new DirectoryResource();
  for(File f : dr.selectedFiles())
  {
      ImageResource ir = new ImageResource(f);
      ImageResource r = convertImage(ir);
      String name = ir.getFileName();
      String x ="grey-"+name;
      r.setFileName(x);
      r.save();
      System.out.println(r.getFileName());
      r.draw();
    }
}

即使尝试了所有可能的更改,我也无法找出原因。

4

0 回答 0