這在本質上有點模糊,但那是因爲我必須開始在這方面開展工作。通過linux中的java代碼從windows共享數據
我們計劃使用Windows共享驅動器。我們將自動從Windows共享(從運行在Linux上的Java代碼)中選擇這些文件並將其用於進一步處理。
- 從Linux的java代碼使用Windows共享有什麼已知的問題嗎?我們如何做到這一點?只有掛載文件系統的方式?
- 我們可以運行各種文件系統命令來列出文件(或移動/鎖定/刪除文件等)嗎?
在此先感謝。
這在本質上有點模糊,但那是因爲我必須開始在這方面開展工作。通過linux中的java代碼從windows共享數據
我們計劃使用Windows共享驅動器。我們將自動從Windows共享(從運行在Linux上的Java代碼)中選擇這些文件並將其用於進一步處理。
在此先感謝。
看看Aapche commons-vfs。它支持SMB(Windows共享)。 http://commons.apache.org/vfs/
我已經使用jcifs處理在我的項目桑巴舞。有一個類jcifs.smb.SmbFile
類似於java.io.File
可以像處理本地文件一樣處理samba文件。像listFiles()
,delete()
,exists()
,getInputStream()
,createNewFile()
等方法應該可以滿足您的需求。
這是一個低地文件演示,希望它可以幫助你。
SmbFileInputStream is = null;
FileOutputStream os = null;
//
String souFileUrl = "smb://" + user + ":" + password + "@" + server + "/" + souFileName;
SmbFile souSmbFile = new SmbFile(souFileUrl);
is = new SmbFileInputStream(souSmbFile);
File tempOutFile = new java.io.File(newfilename);
os = new FileOutputStream(tempOutFile);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
os.write(bytes, 0, c);
}
非常感謝!看起來很有幫助!據我所知,這不應該是任何問題了。同樣,任何設置filewatcher的好鏈接都可以關注windows共享並在Linux上告知我們? – instanceOfObject