package test;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import jcifs.smb.SmbFile;
import jcifs.smb.SmbFileOutputStream;
public class CustsmTimerTask {
/**
* Description: 從本地上傳文件到共享目錄
*
* @Version1.0 Sep 25, 2009 3:49:00 PM
* @param remoteUrl
* 共享文件目錄
* @param localFilePath
* 本地文件絕對路徑
*/
public boolean smbPut(String remoteUrl, String localFilePath) {
InputStream in = null;
OutputStream out = null;
try {
File localFile = new File(localFilePath);
String fileName = localFile.getName();
SmbFile remoteFile = new SmbFile(remoteUrl + "/" + fileName);
in = new BufferedInputStream(new FileInputStream(localFile));
out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile));
byte[] buffer = new byte[1024];
while (in.read(buffer) != -1) {
out.write(buffer);
buffer = new byte[1024];
}
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
try {
out.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Runnable runnable = new Runnable() {
public void run() {
CustsmTimerTask cstt=new CustsmTimerTask();
boolean a=cstt.smbPut("smb://administrator:'@10.101.238.70/共享", "d://test/aa.csv") ;
System.out.println(a);
}
};
ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
// 第二個參數爲首次執行的延時時間,第三個參數爲定時執行的間隔時間
service.scheduleAtFixedRate(runnable, 1, 1440, TimeUnit.MINUTES);
}
}