Пишу программу для скачивания файла с SFT URL
sftp: //demo.wftpserver.com: 2222 / upload / 10MB.zip
но класс URL-адресов java не поддерживает SFTP, поскольку я читал несколько сообщений в stackoverflow.
Проблема в том, что у меня есть общий загрузчик URL-адресов, который загружает файл из всех других протоколов, но проблема только в sftp.
Могу ли я использовать сам класс URL для загрузки файла, или, если мне нужно сделать это каким-либо другим способом, я могу использовать это для загрузки файла из всех источников.
Программа, которую я использую
try
{
bis = new BufferedInputStream(url.openStream());
String fileName = DownloadSourceUtils.getUniqueFileName(DownloadSourceConstants.DOWNLOAD_LOCALTION, url.getFile());
File directory = new File(DownloadSourceConstants.DOWNLOAD_LOCALTION);
if (! directory.exists()){
directory.mkdir();
// If you require it to make the entire directory path including parents,
// use directory.mkdirs(); here instead.
}
fos = new FileOutputStream(DownloadSourceConstants.DOWNLOAD_LOCALTION+File.separator+fileName);
byte dataBuffer[] = new byte[1024];
int bytesRead;
while ((bytesRead = bis.read(dataBuffer, 0, 1024)) != -1)
{
fos.write(dataBuffer, 0, bytesRead);
}
fos.flush();
output = url + " downloaded successfully";
return output;
}
catch (IOException e)
{
output = e.getMessage();
return output;
}
finally
{
if(bis != null)
bis.close();
if(fos != null)
fos.close();
}