Dateien mit verschiedenen Namen speichern

  • ich versuche mit folgendem Code die Datei mit dem Namen von der Webseite zu speichern:


    Doch wenn ich die pdf öffne kommt die meldung: der Dateipfad ist ungültig.
    Wie kann man die Datei richtig speichern ? Ich möchte im Programm sowas wie "meinePdf.pdf" vermeiden.
    mfg.

  • es wird soetwas ausgegeben:


    08-06 20:56:33.739: D/______________(12458): /url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf&ei=VRMgUMreCvD54QSnqYGwDw&usg=AFQjCNEGNV6WmTq3frtIjYkGcbsu-zRR8A

  • Zitat


    /url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf&ei=VRMgUMreCvD54QSnqYGwDw&usg=AFQjCNEGNV6WmTq3frtIjYkGcbsu-zRR8A


    gehört der Backslash vor der der url so zum Dateiname?


    Zum Testen könntest du ja mal das hier versuchen:


    Java
    filefordownload = new File (downfolder, "url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf&ei=VRMgUMreCvD54QSnqYGwDw&usg=AFQjCNEGNV6WmTq3frtIjYkGcbsu-zRR8A");


    Bzw selbst wenn das so geht wirst du dann zwar ne Datei haben aber keine pdf da die Dateiendung fehlt


    Mfg Titus


    P.s. Permission für das Schreiben auf die SD Card ist gesetzt?

  • wie kann ich denn von der riesen url die ich mit dem getFile () kriege, den Namen der Datei rauskriegen ?
    Also im fall der url
    /url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf&ei=VRMgUMreCvD54QSnqYGwDw&usg=AFQjCNEGNV6WmTq3frtIjYkGcbsu-zRR8A
    wäre das dann gesamt.pdf

  • Hi zblack,


    ist ein bissel Quick and Dirty:



    Ausgabe:

    Code
    Url sub: /url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf
    Else - Dateiname: gesamt.pdf


    Voraussetzung ist natürlich deine URL/String bleibt immer in einer gleichen Form.


    Mfg Titus

  • Es gibt die Klasse URLDecoder, damit lässt sich die url in eine etwas mehr lesbare Form bringen.


    Code
    String url = "/url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http%3A%2F%2Fwww.gesetze-im-internet.de%2Fbundesrecht%2Fbgb%2Fgesamt.pdf";
            String decodeUrl = URLDecoder.decode(url);
            String fileName = decodeUrl.substring(decodeUrl.lastIndexOf("/")+1, decodeUrl.length());
            System.out.println("decodeUrl: " + decodeUrl);
            System.out.println("file: " + fileName);


    Ausgabe:

    Code
    decodeUrl: /url?sa=t&source=web&cd=4&ved=0CF8QFjAD&url=http://www.gesetze-im-internet.de/bundesrecht/bgb/gesamt.pdf
    file: gesamt.pdf


    block_

  • cool. das funkzt. das einzige problem was ich jetzt habe ist: was ist wenn die url keine .pdf endung besitzt und was ist wenn die .pdf nicht am ende des strings sondern irgendwo in der mitte ist.
    sonst ist die lösung mit dem decoden und dem abschneiden super. bin begeistert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!