Вопрос

У меня есть код Java для загрузки файлов через FTP, после загрузки файла он переходит на путь по умолчанию. Указанный путь назначения не имеет загруженного файла. Почему? Мой код,

  public class ftpUpload1
  {    

   public static void main(String a[]) throws IOException
{
          ftpUpload1 obj = new ftpUpload1();
          URL url1 = new URL("ftp://vbalamurugan:vbalamurugan@192.168.6.38/ddd.txt" );
 File dest = new File("D:/rvenkatesan/Software/ddd.txt");
       obj.ftpDownload(dest, url1);

     public void ftpDownload(File destination,URL url) throws IOException
 { 
 BufferedInputStream bis = null;
 BufferedOutputStream bos = null;
 try
 {
  URLConnection urlc = url.openConnection();



bis = new BufferedInputStream( urlc.getInputStream() );
   bos = new BufferedOutputStream( new 
                  FileOutputStream(destination.getName() ) );

   int i;
   //read byte by byte until end of stream
   while ((i = bis.read())!= -1)
   {
    // bos.write(i);
    bos.write(i);
   }
   System.out.println("File Downloaded Successfully");
  }
  finally
  {
   if (bis != null)
    try
   {
     bis.close();
   }
   catch (IOException ioe)
   {
    ioe.printStackTrace();
   }
   if (bos != null)
    try
   {
     bos.close();
   }
   catch (IOException ioe)
   {
    ioe.printStackTrace();
   }
  }

  }
        }

       }

Загруженный файл "ddd.txt" не в «D:/rvenktesan/Software». Он расположен в «D: Rvenkatesan/Java Projects». Почему? Направляйте меня хранить файл в указанном пути? Спасибо на заклейку.

Это было полезно?

Решение

Вы проблема FileOutputStream(destination.getName() ) );изменить это на: FileOutputStream(destination.getAbsolutePath() ) );

GetName будет возвращать только имя файла "ddd.txt". Я полагаю, вы начинаете свое приложение с D:/rvenkatesan/JAVA PROJECTS

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top