Строка соединения SMBJ - PullRequest
       15

Строка соединения SMBJ

0 голосов
/ 12 января 2019

Какой формат строки подключения для SMBJ? У кого-нибудь есть пример? Я знаю, что, наверное, обдумываю это. Я пробовал разные комбинации, и кажется, что я жалуюсь, когда использую как прямой, так и обратный слеш.

// trying to connect to = \\host\foldera\folderb\folderc
// tried format = smb://host/foldera/folderb/folderc/

SMBClient client = new SMBClient();

String userName = "userA";
String password = "APassword";
String domain = "ABC_DOMAIN";
String serverName = "smb://host";
String shareName = "/foldera/";
String folderName = "/folderb/folderc";

try (Connection connection = client.connect(serverName)) {
    AuthenticationContext ac = new AuthenticationContext(userName, password.toCharArray(), domain);
    Session session = connection.authenticate(ac);

    // Connect to Share
    try (DiskShare share = (DiskShare) session.connectShare(shareName)) {
        for (FileIdBothDirectoryInformation f : share.list(folderName", "*.TXT")) {
            System.out.println("File : " + f.getFileName());
        }
    }
}

1 Ответ

0 голосов
/ 12 января 2019

Да, я думал об этом. Это буквально так просто. Смотрите пример.

// trying to connect to = "\\MyHost\MyShareName\FolderA\FolderB"

SMBClient client = new SMBClient();

String userName = "userA";
String password = "APassword";
String domain = "ABC_DOMAIN";
String serverName = "MyHost";
String shareName = "MyShareName";
String folderName = "FolderA\FolderB";

try (Connection connection = client.connect(serverName)) {
    AuthenticationContext ac = new AuthenticationContext(userName, password.toCharArray(), domain);
    Session session = connection.authenticate(ac);

    // Connect to Share
    try (DiskShare share = (DiskShare) session.connectShare(shareName)) {
        for (FileIdBothDirectoryInformation f : share.list(folderName", "*.TXT")) {
            System.out.println("File : " + f.getFileName());
        }
    }
}
...