JAVA²Ù×÷windows¹²ÏíĿ¼
1 Ïà¹Ø֪ʶ½éÉÜ
1.1 SMB
MicrosoftÍøÂçÅäÖÃÖÐÖ÷Òª²ÉÓÃSMBÐÎʽʵÏÖÎļþ¹²ÏíºÍ´òÓ¡·þÎñ£¬SMB£¨·þÎñÆ÷ÏûÏ¢¿é£©ÊÇÒ»ÖÖ¿Í»§¶Ë/·þÎñÆ÷Îļþ¹²ÏíÐÒé¡£IBMÓÚ20ÊÀ¼Í80Äê´úÄ©ÆÚ¿ª·¢ÁË·þÎñÆ÷ÐÅÏ¢¿é£¨SMB£©£¬ÓÃÓڹ淶¹²ÏíÍøÂç×ÊÔ´£¨ÈçĿ¼¡¢Îļþ¡¢´òÓ¡»úÒÔ¼°´®Ðж˿ڣ©µÄ½á¹¹¡£ÕâÊÇÒ»ÖÖÇëÇó/ÏìÓ¦ÐÒé¡£ÓëFTPÐÒéÖ§³ÖµÄÎļþ¹²Ïí²»Í¬£¬SMBÐÒéÖеĿͻ§¶ËÒªÓë·þÎñÆ÷½¨Á¢³¤ÆÚÁ¬½Ó¡£Ò»µ©½¨Á¢Á¬½Ó£¬¿Í»§¶ËÓû§¾Í¿ÉÒÔ·ÃÎÊ·þÎñÆ÷ÉϵÄ×ÊÔ´£¬¾ÍÈçͬ×ÊԴλÓÚ¿Í»§¶ËÖ÷»úÉÏÒ»Ñù¡£
´ÓWindows 2000ϵÁÐÈí¼þ¿ªÊ¼£¬MicrosoftÐÞ¸ÄÁËÈí¼þµÄ»ù´¡½á¹¹£¬Ê¹ÆäÊÊÓÃSMBÐÒé¡£¶øÔÚÒÔÇ°µÄMicrosoft²úÆ·ÖУ¬SMB·þÎñÐèҪʹÓ÷ÇTCP/IPÐÒé×åÀ´Ö´ÐÐÓòÃû½âÎö¡£´ÓWindows 2000¿ªÊ¼£¬MicrosoftµÄËùÓвúÆ·¶¼²ÉÓÃDNSϵͳ¡£ÓÉ´Ë£¬TCP/IPÐÒé×å¿ÉÒÔÖ±½ÓÖ§³ÖSMB×ÊÔ´¹²Ïí¡£
SMBÐÒéÖй涨ÁËÎļþϵͳ·ÃÎʺͿͻ§ÈçºÎÇëÇóÎļþµÄ·½Ê½ÒÔ¼°SMBÐÒé½ø³Ì¼äͨÐŵķ½Ê½¡£ËùÓеÄSMBÏûÏ¢¶¼²ÉÓÃÒ»ÖÖ¸ñʽ¡£¸Ã¸ñʽ²ÉÓù̶¨´óСµÄÎļþÍ·£¬ºó¸ú¿É±ä
´óСµÄ²ÎÊýÒÔ¼°Êý¾Ý×é¼þ¡£
1.2 jcifs
Jcifs
pan>ÊÇÒ»¸öÓÃJAVA¿ª·¢µÄSMB¿Í»§¶Ë¿â£¬ÀûÓÃjcifs¿ÉÒÔ²Ù×÷windows¹²ÏíÎļþ£¬¿ÉÒԵõ½ÓòÓû§£¬ÊµÏÖµ¥µãµÇ¼£¬×îа汾Ϊ£º1.3.12£¬¹Ù·½ÍøÖ·£ºhttp://jcifs.samba.org/
2. ´úÂëʵÏÖ
¿´´úÂ룬²»Ëµ»°¡£
2.1 ´Ó¹²ÏíĿ¼ÏÂÔØÎļþ
/**
* Description: ´Ó¹²ÏíĿ¼¿½±´Îļþµ½±¾µØ
* @Version1.0 Sep 25, 2009 3:48:38 PM by ´Þºì±£´´½¨
* @param remoteUrl ¹²ÏíĿ¼ÉϵÄÎļþ·¾¶
* @param localDir ±¾µØĿ¼
*/
public static void smbGet(String remoteUrl,String localDir) {
InputStream in = null;
OutputStream out = null;
try {
SmbFile remoteFile = new SmbFile(remoteUrl);
if(remoteFile==null){
System.out.println("¹²ÏíÎļþ²»´æÔÚ");
return;
}
String fileName = remoteFile.getName();
File localFile = new File(localDir+File.separator+fileName);
in = new BufferedInputStream(new SmbFileInputStream(remoteFile));
out = new BufferedOutputStream(new FileOutputStream(localFile));
by
Ïà¹ØÎĵµ£º
×î½ü×öjava¿Í»§¶Ë jre+installanywhere+jar ´ò°ü·¢²¼.exe°²×°¿Í»§¶Ë¡£´ò°ü³öÀ´ÎÞÄÎjreÌ«´óbeta°æ³ÌÐòÖ»Óм¸°Ùk ¿ÉÊÇjre´ò°üÏÂÀ´Óн«½ü30M£¬ÔÚÍøÉÏËÑË÷¾«¼ò°æ¿Í»§¶Ë£¬¿ÉÊǰ汾ȷʵ̫¾«¼òÁËÓÐЩÀàûÓУ¬¶øÕâ°æ±¾ÓÖºÍ×Ô¼º×°µÄ°æ±¾Óв»Í¬£¬ÔÚÍøÉÏÕÒÑ°°ëÌì²»µÃjreµÄ¾É°æ±¾×îºóÖÕÓÚÕÒµ½£¬ÕâÀïÌṩµØÖ·£¨java¸÷°æ±¾ÏÂÔصØÖ·£ ......
ÏÖÔںܶàÈ˶¼ÎÊ C++ºÍJava ÄĸöºÃ. Æäʵ¼¼ÊõÉϸ÷Óи÷µÄºÃ´¦Óë²»×ã,ÎÒÏë´ó¼ÒËù˵µÄºÃ²»ºÃÖ¸µÃÊÇǰ;ºÃ²»ºÃ,׬µÄ¶à²»¶à.
Ҫ˵׬Ǯ×î¶àµÄ¿Ï¶¨ÊÇC++ÁË.ÒòΪһÃż¼ÊõÊÇ·ñֵǮȫ¿´»áËüµÄÈËÓжàÉÙ¶ø²»ÔÚÓÚÕâ¸ö¼¼Êõ±¾ÉíµÄºÃ»µ. C++Éæ¼°Ó²¼þµ×²ãµÄ¶«Î÷±È½Ï¶à,ѧÆðÀ´ºÜ¸´ÔÓ,»áµÄÈËÉÙ,ËùÒÔֵǮ.
&nb ......
×î½üѧϰÖÐ×ÜÊǸоõÍ£Ö¹²»Ç°ÁË£¬µ½´ïÒ»¸öÆ¿¾±£¬¾³£Ð´µ½Ò»¸öµØ·½»á¾õµÃÕâ¸ö¶«Î÷ѧ¹ýµ«Óв»ÊÇÄÇôµÄÇå³þ£¬Ò»ÖÖËƶ®·Ç¶®µÄ¸Ð¾õ£¬ËùÒÔ¾ö¶¨Õҵط½°ÑÿÌìËùѧϰµÄ»òÓÐÓõĶ«Î÷¼Ç¼ÏÂÀ´£¬½ñÌ쿪ʼÕâÀォÊÇÎҵļ¼Êõ¿â£¬ÎÒ»áÓëËùÓа®ºÃJAVAµÄÅóÓÑÒ»Æðѧϰ£¬Ò»Æð½ø²½¡£½ñÌìÊÇ¿ª²©µÚÒ»Ì죬ÕýºÃÔÚ¸´Ï°DAOÉè¼Æģʽ£¬¿´µ½Ò»Æ¬²»´íµÄ½²½â£ ......
public class Path {
//get class absolute address
public String getPath() {
String classPath = getClass().getName();
if (classPath.indexOf(".") != -1) {
classPath = classPath.substring(classPath.lastIndexOf(".") + 1,
......