Tôi vừa thử nghiệm JCIFS để truy cập vào các chia sẻ Windows. Nó rất chậm đến mức hoàn toàn không thể sử dụng được.JCIFS: truy xuất tệp quá chậm để có thể sử dụng được
import jcifs.smb.*;
class First {
public static void main(String[] args) throws Exception {
try {
//jcifs.Config.setProperty("jcifs.netbios.wins", "192.168.1.220");
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("domain.com", "Administrator", "password");
SmbFile f = new SmbFile("smb://10.17.15.12/Share/xml/file.xml", auth);
SmbFileInputStream in = new SmbFileInputStream(f);
byte[] b = new byte[8192];
int n;
while((n = in.read(b)) > 0) {
System.out.write(b, 0, n);
}
} catch (SmbException smbe) {
System.err.println(smbe.getNtStatus());
System.err.println(smbe.toString());
System.err.println(smbe.getCause());
}
}
}
Phải mất rất nhiều thời gian cho lần xuất đầu tiên đến và lần đọc tiếp theo cũng rất chậm. Bất kỳ ý tưởng làm thế nào để sử dụng nó? Bất kỳ lựa chọn thay thế nào mà tôi có thể viết mã Java để truy cập vào cổ phiếu Windows theo cách di động cũng được chào đón
Tôi biết đây là câu trả lời cũ, nhưng liên kết nguồn dường như đã lỗi thời. – Vish