21. marts 2009 - 19:59Der er
28 kommentarer og 1 løsning
ftp download
Hej
Jeg forsøger at downloade fra en ftp server. Får forbindelse og ingen fejlkode men desværre får jeg ikke downloaded filen. Er der nogen som kan se hvad jeg gør forkert eller har i noget kode jeg kan bruge istedet?
public class FTPConnect { ....
public synchronized boolean downloadFile (String localfilename) { try{
InputStream is = ftpClient.getInputStream(); BufferedInputStream bis = new BufferedInputStream(is);
OutputStream os = new FileOutputStream(localfilename); BufferedOutputStream bos = new BufferedOutputStream(os);
byte[] buffer = new byte[1024]; int readCount; System.out.println("outside while"); while( (readCount = bis.read(buffer)) > 0) { System.out.println("inside while"); bos.write(buffer, 0, readCount); } bos.close(); is.close (); // close the FTP inputstream // this.succMesg = "Downloaded!"; System.out.println("now we should have succcesided");
public synchronized boolean stor(File file, String inputStream) throws IOException { if (file.isDirectory()) { throw new IOException("SimpleFTP cannot upload a directory."); } // Use passive mode as default because most of us are // behind firewalls these days. ftpClient.enterLocalPassiveMode();
String filename = file.getName();
InputStream in = new FileInputStream(inputStream); success = ftpClient.storeFile(filename, in); // ftpClient.disconnect(); return success; }
Synes dog ikke helt at jeg får filen ned på computeren. Får dog success når jeg køre programmet. Men kan ikke se filen. Hvor lagde den sig da du fik det til at virke?
Har prøvet at ændre localfilename til "c:\\test\\test.xls" men ser ikke ud til at virke. Eller rettere får desværre ikke filen ned til computeren.
OutputStream os = new FileOutputStream(localfilename); BufferedOutputStream bos = new BufferedOutputStream(os);
Synes nu også jeg gjorde det samme men nu virker det... Mange tak.. Forresten har du en ide om hvorfor jeg får denne besked når jeg åbner mit excel dokument "test.xls cannot be accessed. The file may be read-only or you may be trying to access a read-only location. Or the server the document is stored on may not be responding."
Kan se at filen har samme størrelse som den jeg har hentet fra serveren. Når jeg bare kopire filen over via et ftp program(GUI) så får jeg samme besked. Så det er ikke pga mit program.
har højreklikket på filen og valgt egenskaber men her står der ikke nogen specilet unormalt. den er ikke skrivebeskyttet. Er der andre steder jeg skal kigge. Samt er der nogle rettigheder man kan ændre inden man henter filen ned.
Hey Arne tror jeg har fundet ud af lidt mere. Det går galt når mit program uploader filen til serveren. Har taget en fil og uploaded den til ftp-serveren via en GUI. Herefter hentede jeg den ned igen via mit program og her virker det helt fint. Kan du se hvad der går galt i mit upload eller har du et eksempel som virker eller er bedre?
Smider gerne 60 point ekstra i det hvis du kan hjælpe mig med dette nye problem:)
Har prøvet med bare et alm. ftp program (brugte core ftp) og her virker det helt fint. I min kode bruger jeg SimpleFTP. Kender du et andet som er bedre at bruge?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.