0

URLからファイルを読み取ろうとしていて、それをFileタイプにしています。

以下はコードです

public File fileFromUrl(String str) throws IOException
      {
          File file = new File ("image.png");
          URL url = new URL (str);
            InputStream input = url.openConnection().getInputStream();
            try {

                OutputStream output = new FileOutputStream (file);
                try {
                    byte[] buffer = new byte[1024];
                    int bytesRead = 0;
                    while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0) {
                        output.write(buffer, 0, bytesRead);
                    }
                } finally {
                    output.close();
                }
            } finally {
                input.close();
            }
          return file;
      }

ただし、次の場所でエラーが発生しています OutputStream output = new FileOutputStream (file);

親切に教えてくださいFileurl

4

2 に答える 2

0

取得している例外を投稿していただけると助かりますが、出力ファイルを作成しようとしている現在の作業ディレクトリへの書き込み権限がないことが推測されます。

ファイルを書き込もうとしている場所を知りたい場合は、この診断をプログラムに追加します。

System.out.println(
  "Absolute path of image.png: <" + file.getAbsolutePath( ) + ">"
); 
于 2012-09-09T18:39:34.180 に答える
0

Fine. Instead of File file = new File ("image.png"); use absolute path for the file. Like File file = new File ("<absolute-path-from-root-directory>");

于 2012-09-09T18:47:51.203 に答える