Este exemplo compartilha o código específico para o Java enviar remotamente arquivos para o servidor para sua referência. O conteúdo específico é o seguinte
1. Pacotes de jar relacionados JCIFS-1.3.14.1.jar
2. Crie uma declaração de SMB
importar java.io.bufferInputStream; importar java.io.file; importar java.io.fileInputStream; importar java.io.ioException; importar java.net.MalformEdUrlexception; importar java.net.unknownhostException; importar jcifs.smb.smbexception; importar jcifs.smb.smbfile; importar jcifs.smb.smbfileOutputStream; classe pública SMBUTIL {// 1. Declare a propriedade Private String url = "SMB: // Nome de usuário: [email protected]/mars/"; SMBFILE SMBFILE DE PRIVADO = NULL; private sMbfileOutputStream sMbout = null; Smbutil estático privado smbutil = nulo; // Protocolo de arquivo compartilhado private sbutil (string url) {this.url = url; this.init (); } // 2. Obtenha o método de sbutil e conexão public estático sincronizado SMBUTIL GetInstance (String url) {if (sbutil == NULL) retorna novo SMBUTIL (URL); devolver sbutil; } // 3.smbfile conexão pública void init () {try {System.out.println ("Iniciar a conexão ... url:" + this.url); sMbfile = novo sMbfile (this.url); sMBFile.Connect (); System.out.println ("Conexão bem -sucedida ... url:" + this.url); } catch (malformEdurlexception e) {e.printStackTrace (); System.out.print (e); } catch (ioexception e) {e.printStackTrace (); System.out.print (e); }} // 4. Carregue o arquivo para o servidor public Int UploadFile (arquivo de arquivo) {int flag = -1; BufferInputStream bf = null; tente {this.smbout = new SMBFileOutputStream (this.url + "/" + file.getName (), false); bf = new bufferInputStream (new FileInputStream (arquivo)); byte [] bt = novo byte [8192]; int n = bf.read (bt); while (n! = -1) {this.smbout.write (bt, 0, n); this.smbout.flush (); n = bf.read (bt); } sinalizador = 0; System.out.println ("Fim de transferência de arquivo ..."); } catch (sMBException e) {e.printStackTrace (); System.out.println (e); } catch (malformEdurlexception e) {e.printStackTrace (); System.out.println (e); } catch (desconhecidohostException e) {e.printStackTrace (); System.out.println (e); } catch (desconhecidohostException e) {e.printStackTrace (); System.out.println ("host não encontrado ... url:" + this.url); } catch (ioexception e) {e.printStackTrace (); System.out.println (e); } finalmente {tente {if (null! = this.smbout) this.smbout.close (); if (null! = bf) bf.close (); } catch (Exceção E2) {E2.PrintStackTrace (); }} retornar sinalizador; } // 5. Teste public static void main (string [] args) {// Formato de endereço do servidor SMB: // Nome de usuário do computador: senha do computador@Endereço IP do computador/pasta compartilhada IP String Remoteurl = "SMB: // wangqinghua: [email protected]/mars/"; String localfile = "F:/Switch Production and Sales Enterprise Directory.xls"; // arquivo local a ser carregado arquivo de arquivo = novo arquivo (local local); SMBUTIL SMB = SMBUTIL.GETINSTANCE (Remoteurl); smb.uploadfile (file); // FILHO DE AGRADEIRA}}Coisas a serem observadas:
O acima é baseado na LAN e o diretório ou pasta que o upload de arquivos deve ser definido para compartilhar o modo.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.