How do I create File object from URL?

Date: 2012-01-10. Category: commons.io examples. Hits: 2K time(s).

The code snippet below use the FileUtils.toFile(URL url) method that can be found in the commons-io library to convert a URL into a File. The url protocol should be file or else null will be returned.

package org.kodejava.example.commons.io;

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.net.URL;

public class URLToFile {
    public static void main(String[] args) throws Exception {
        //
        // FileUtils.toFile(URL url) convert from URL the File.
        //
        String data = FileUtils.readFileToString(FileUtils.toFile(
                URLToFile.class.getResource("/data.txt")));
        System.out.println("data = " + data);

        //
        // Creates a URL with file protocol and convert it into File
        // object.
        //
        File file = FileUtils.toFile(new URL("file://D:/demo.txt"));
        data = FileUtils.readFileToString(file);
        System.out.println("data = " + data);
    }
}