0

を使用してファイルを選択しました

File file = fileChooser.getSelectedFile();

ユーザーが保存ボタンをクリックしたときに、ユーザーが選択したこのファイルを別の場所に書き込みたいと思います。スイングを使用してそれを達成する方法は?

4

4 に答える 4

2

ファイルを選択するには、次のようなものが必要です。

    JFileChooser open = new JFileChooser();
    open.showOpenDialog(this);
    selected = open.getSelectedFile().getAbsolutePath(); //selected is a String 

...コピーを保存するには、

    JFileChooser save = new JFileChooser();  
    save.showSaveDialog(this);  
    save.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
    tosave = fileChooser.getSelectedFile().getAbsolutePath(); //tosave is a String

    new CopyFile(selected,tosave);

... copyFile クラスは次のようになります。

public class CopyFile {

    public CopyFile(String srFile, String dtFile) {

        try {
            File f1 = new File(srFile);
            File f2 = new File(dtFile);
            InputStream in = new FileInputStream(f1);

            OutputStream out = new FileOutputStream(f2);

            byte[] buf = new byte[1024];
            int len;
            while ((len = in.read(buf)) > 0) {
                out.write(buf, 0, len);
            }
            in.close();
            out.close();
            System.out.println("File copied.");
        } catch (FileNotFoundException ex) {
            System.out.println(ex.getMessage() + " in the specified directory.");
            System.exit(0);
        } catch (IOException e) {
            System.out.println(e.getMessage());
        }
    }
}

この質問もご覧ください:JFileChooserを使用してファイルを保存するには? #MightBeHelpfull

于 2012-04-27T15:41:40.893 に答える
1

Swing は、場所/ファイル オブジェクトを提供するだけです。新しいファイルを自分で作成する必要があります。

ファイルをコピーするには、次の質問を指摘します: Java でファイルをコピーするための標準的な簡潔な方法は?

于 2012-04-27T15:06:25.777 に答える
0

ファイルをに読み込んでInputStreamから、に書き込みますOutputStream

于 2012-04-27T15:07:35.677 に答える
0

JDK 1.7を使用している場合は、java.nio.file.Filesクラスを使用できます。このクラスは、ファイルを特定の宛先にコピーするためのいくつかのコピーメソッドを提供します。

于 2012-04-27T15:07:46.427 に答える