Zum normalen Kopieren verwende ich meine kleine Klasse:
So kann ich ganz schnell und bequem Dateien kopieren:
Doch wenn ich - was auch mit anderen Kopiermethoden so ist - etwas in "C:\\Programme\\MeinProgramm" hineinkopieren möchte, funktioniert es nicht (wahrscheinlich Zugriff verweigert) - denn ich habe Vista.
Gibt es eine Möglichkeit, trotzdem bei Vista Dateien in den Programm-Ordner zu stopfen?
Ich meine, sonst könnten ja keine Programme installiert werden
Java:
package util;
import java.io.*;
import java.nio.channels.FileChannel;
public class CopyableFile extends File
{
public CopyableFile(String pathname)
{
super(pathname);
}
public void copyTo(File destination)
{
enableSourceAndDestinationFilesToWriting(destination);
copyThisChannelContentIntoDestinationChannel(destination);
}
private void enableSourceAndDestinationFilesToWriting(File destination)
{
setWritable(true);
destination.setWritable(true);
}
private void copyThisChannelContentIntoDestinationChannel(File destination)
{
FileChannel sourceChannel = null, destinationChannel = null;
try
{
sourceChannel = new FileInputStream(this).getChannel();
destinationChannel = new FileOutputStream(destination).getChannel();
destinationChannel.transferFrom(sourceChannel, 0, sourceChannel.size());
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
closeChannels(sourceChannel, destinationChannel);
}
}
private void closeChannels(FileChannel... fileChannels)
{
for (FileChannel channel : fileChannels)
{
try
{
channel.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
}
So kann ich ganz schnell und bequem Dateien kopieren:
Java:
File datei = new File("C:\\Users\\Username\\Desktop\\suppenloeffel.jpg"),
kopie = new File("C:\\Users\\Username\\Bilder\\bild.jpg");
datei.copyTo(kopie);
Doch wenn ich - was auch mit anderen Kopiermethoden so ist - etwas in "C:\\Programme\\MeinProgramm" hineinkopieren möchte, funktioniert es nicht (wahrscheinlich Zugriff verweigert) - denn ich habe Vista.
--------------------------------------------------------------------------------------------------------------------
Gibt es eine Möglichkeit, trotzdem bei Vista Dateien in den Programm-Ordner zu stopfen?
Ich meine, sonst könnten ja keine Programme installiert werden