2016-08-09 94 views
1

Ich lese die TXT-Dateien mit dem BufferedReader. Aber welche Dateien möchte ich lesen, dass Dateien im Netzlaufwerk gespeichert sind (zB: Daten (\ 10.10.30.50) (Z :)).Wie wird eine Verbindung zum Netzwerklaufwerk mithilfe von Anmeldeinformationen mit Java hergestellt?

Für die Verbindung mit dem Netzlaufwerk, Das Laufwerk fragt nur nach dem Passwort, nachdem ich das Passwort angegeben habe, kann ich die Datei lesen.

Wie kann ich mithilfe von Java-Code eine Verbindung zum Netzlaufwerk herstellen? Ich möchte dieses Laufwerk mit Java-Code entsperren.

Antwort

0

Verwenden Sie Samba (CIFS) für diesen Zweck. Ich benutze JCIFS für diesen Zweck.

NtlmPasswordAuthentication credentials = new NtlmPasswordAuthentication(domain+";"+user+":"+pass); 

String fileContent(String path) { 
     StringBuilder builder = null; 
     try { 
      SmbFile smbfile = new SmbFile(path, credentials); 
      builder = readFileContent(smbfile);   

     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     return builder.toString(); 
} 

private StringBuilder readFileContent(SmbFile sFile){ 
    BufferedReader reader = null; 
    try{ 
     reader = new BufferedReader(new InputStreamReader(new SmbFileInputStream(sFile))); 
    } 
    catch(IOException e){ 
     e.printStackTrace(); 
    } 
    StringBuilder builder = new StringBuilder(); 
    String in = null; 
    try{ 
     while((in = reader.readLine())!=null){ 
      builder.append(in).append("\n"); 
     } 
     reader.close(); 
    } 
    catch(IOException e){ 
     e.printStackTrace(); 
    } 
    return builder; 
}