Pergunta : Fixar o ftp em Java

Olá! Expert

I tem um método esse limas das transferências de arquivo pela rede a um ftp site. Mas eu estou esforçando-me um bocado faço algum things.

Well que eu quero transferir arquivos pela rede imediatamente 5 limas máximas (*.xml) e para receber uma mensagem que transfira arquivos pela rede as mesmas limas outra vez com um

E.g.
12.xml
34.xml
56.xml
78.xml
910.xml

After do ext (*.eof) este tome o mesmo nome das limas com um movimento diferente do ext
12.eof
34.eof
56.eof
78.eof
910.eof

Then então a um outro class= " lineNumbers " >
1 do >
fileuploads do pacote;

importação com.jcraft.jsch.*;
importação java.io.*;
importação java.util.*;

classe pública TestJSch {

	TestJSch público () {

	}

	vácuo público da estática principal (args da corda []) {

		tentativa {
			ftpHost da corda = “IP address”;
			ftpPort = porto do int;
			ftpUserName da corda = “username”;
			ftpPassword da corda = “senha”;
			Corda ftpRemoteDirectory = “//dropzone/inbound/moneymarket/mmconfirmations/dev”;
			fileToTransmit da corda = “C: /tmp/*.txt”;

			// cria primeiramente uma sessão de JSch

			System.out.println (“criando session.");
			Jsch de JSch = JSch novo ();
			Sessão = zero da sessão;
			Canaleta = zero da canaleta;
			ChannelSftp c = zero;

			// coneta agora e SFTP ao usuário de SFTP
			//
			tentativa {
				// cria uma sessão que emite com nossos username e senha
				sessão = jsch.getSession (ftpUserName, ftpHost, ftpPort);
				System.out.println (“sessão created.");
				session.setPassword (ftpPassword);

				// Setup HostKeyChecking estrito ao nenhum assim que nós não começ o desconhecido
				exceção da chave do anfitrião de //
				java.util. Config das propriedades = java.util novo. Propriedades ();
				config.put (“StrictHostKeyChecking”, “não”);
				session.setConfig (config);
				session.connect ();
				System.out.println (“sessão connected.");

				// abre a canaleta de SFTP
				//
				System.out.println (“abertura Channel.");
				canaleta = session.openChannel (“sftp”);
				channel.connect ();
				c = canaleta (de ChannelSftp);
			} prendedor (exceção e) {
				System.err.println (“incapaz de conetar ao ftp server.”
						+ e.toString ());
				lance e;
			}

			Mudança de // ao diretório remoto
			//
			System.out.println (“mudando ao dir remoto do ftp: ”
					+ ftpRemoteDirectory);
			c.cd (ftpRemoteDirectory);

			// emite a lima que nós geramos
			tentativa {
				Lima f = lima nova (fileToTransmit);
				System.out.println (“armazenando a lima como o nome de arquivo remoto: ” + f.getName ());
				c.put (FileInputStream novo (f), f.getName ());
			} prendedor (exceção e) {
				System.err.println (“armazenando a lima remota falhada.” + e.toString ());
				lance e;
			}

			// começ a lista de limas no diretório do usuário remoto

			O vetor arquiva = c.ls (ftpRemoteDirectory);
			Registro de // se nós não não temos nada transferir
			se (== 0 de files.size ()) {
				System.out.println (“nenhuma lima está disponível para download.");
			}


		}
			prendedor (exceção e) {
				System.err.println (“erro: ” + e.toString ());
		}

		System.out.println (“processo Complete.");
		System.exit (0);

	}
} class= >
de
class= do

Resposta : Fixar o ftp em Java

Substituir o método dos listFiles () com a execução abaixo. Você deu outra vez a extensão no erro do método do ensWith (); não pode ser *.xml que teria que ser a extensão que você passa ao método.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
listFiles de estática públicos da lima [] (diretório da corda, extensão final da corda) {
	    	
	    	Dir da lima = lima nova (diretório);
	    	
	    	fileFilter de FileFilter = FileFilter novo () { 
	    		bôoleanos públicos aceitam (a lima da lima) { 
	    			file.getName do retorno () .endsWith (extensão); 
	    		} 
	    	};
	    	dir.listFiles do retorno (fileFilter); 
	    }
Outras soluções  
 
programming4us programming4us