Probleme renameTo mit PDF

Status
Nicht offen für weitere Antworten.

friedak

Mitglied
Hallo zusammen,

ich habe eine Methode gebaut, die ein File umbenennen soll. Das funktioniert auch für unterschliedliche Datein, wie z.B: .xml oder .java aber nicht fpr PDFs (.pdf)! Warum ist das so? Kann mir da jemand helfen? Die Dateilese ich mit dem FileChooser aus.

Gruß, friedak
 
was funktioniert denn nicht? eine exception, oder ist das pdf danach schrott? denk auch mal über den unterschied zwischen xml, java etc und pdf nach...ich ahne nämlich, wo das problem liegt *schlautu*.

grüße
 
ja ich ahne auch etwas 🙂

vielleicht klappt die hier
Code:
/**
		 * This method copys one file to another. renameTo stinkt
		 * @param in
		 * @param out
		 * @throws Exception
		 */
		public static void copyFile(File in, File out) throws Exception {
		    FileInputStream fis  = new FileInputStream(in);
		    FileOutputStream fos = new FileOutputStream(out);
		    byte[] buf = new byte[1024];
		    int i = 0;
		    while((i=fis.read(buf))!=-1) {
		      fos.write(buf, 0, i);
		      }
		    fis.close();
		    fos.close();
		    }
 
Ja und was genau IST die Richtung? man sollte das doch umbenennen können, egal ob nun JAVA oder PDF hinten dran hängt!? ???:L Kannja nicht sein, dass man die Datei sinnlos rum-kopieren muss. (Und ob's nun binär oder ASCII ist sollte mindestens genauso egal sein, falls ihr das meintet...)
 
tja, dann probier das mal unter windows...was sagt er dir dann? du kannst nicht einfach aus jeder datei jede machen! solange es plaint text ist (xml, txt, java etc pp) geht das, da spielt die endung keine rolle. immerhin kannst du eine textdatei benennen, wie du willst, auch fjdakfsdlfjdfjsdfk.dasjkdasjdasklds wenn du magst. die kannst du dann auch zu datei.pdf umbenennen, aber dann ists noch lange keine pdf datei!! genausowenig kannst du eine wav datei also png abspeichern. WAS du kannst, ist den namen ändern, aber die datei ändert sich dadurch noch lange nicht!



grüße
 
na und das hat auch niemand behauptet, er will die datei einfach nur umbenennen. er hat auch gar nicht gesagt dass er die dateiendung ändern will, vielleicht will er sie auch nur verschieben?
ich vermute mal dass ein anderes programm noch auf die datei zugreift.
 
Code:
import java.io.*;

class RenameTest
{
    public static void main(String args[])
    {
        File f0 = new File("test.pdf");
        File f1 = new File("test1.pdf");
        f0.renameTo(f1);
    }
}
Und weiter...? ???:L
Ich hätte zuerst auf Schreibschutz getippt, aber ganz analog dazu kann der Grund natürlich auch der sein, den Roar genannt hat...

EDIT: Und wenn man im Beispiel oben die Endung auf .wav oder .txt ändert, funktioniert das auch. Warum auch nicht...!?
 
danke, das mit dem FileInputStream und FileOutputStream funktioniert. Aber seltsam, dass rename da so zicken macht. Na ja...

Gruß und danke,
friedak ;-)
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben