Hallo liebes Forum.
Ich möchte ein Programm entwerfen, das Dateien sicher löscht-. das heißt die Dateien an der richtigen Speicheradresse mit Nullen oder Einsen überschreibt. Nach meinem Wissen werden beim herkömmlichen Löschen unter Windows der Speicher bloß freigegeben aber nicht überschrieben, was das Löschen unsicherer macht.
Ich gehe dabei so vor:
[CODE lang="java" title="Sicheres Löschen"]private static String dateiString = "" ;
private static String f = System.getProperty("file.separator");
private static String filePath = "." + f + "src" + f + "Test.txt";
private static File file = new File(filePath);
inputStream = new FileInputStream(file);
while (( i= inputStream.read()) != -1) {
char c="0";
dateiString = dateiString + c;
}
OutputStream outputStream = null;
try {
outputStream = new FileOutputStream(file);
outputStream.write(dateiString.getBytes());
} catch (Exception e) {
} finally {
outputStream.close();
}
[/CODE]
Macht der Code genau das was er soll oder bin ich auf dem Holzweg?
Danke für Antworten.
Ich möchte ein Programm entwerfen, das Dateien sicher löscht-. das heißt die Dateien an der richtigen Speicheradresse mit Nullen oder Einsen überschreibt. Nach meinem Wissen werden beim herkömmlichen Löschen unter Windows der Speicher bloß freigegeben aber nicht überschrieben, was das Löschen unsicherer macht.
Ich gehe dabei so vor:
[CODE lang="java" title="Sicheres Löschen"]private static String dateiString = "" ;
private static String f = System.getProperty("file.separator");
private static String filePath = "." + f + "src" + f + "Test.txt";
private static File file = new File(filePath);
inputStream = new FileInputStream(file);
while (( i= inputStream.read()) != -1) {
char c="0";
dateiString = dateiString + c;
}
OutputStream outputStream = null;
try {
outputStream = new FileOutputStream(file);
outputStream.write(dateiString.getBytes());
} catch (Exception e) {
} finally {
outputStream.close();
}
[/CODE]
Macht der Code genau das was er soll oder bin ich auf dem Holzweg?
Danke für Antworten.