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¸÷°æ±¾ÏÂÔØµØÖ·£ ......
×Ô¶¨ÒåµÄKeyÀàÐèÒªÖØÔØequals, hashCodeº¯Êý¡£¡£
package com.albert.test;
import java.util.Vector;
import java.util.HashMap;
/**
* @author tough_guy
*
*/
//¶ÔÓÚ×Ô¶¨ÒåµÄkey£¬ ÐèÒªÖØÔØhashCodeº¯ÊýºÍequalsº¯Êý
class IPSegment
{
long ip_s;
long ip_e;
int p;
IPSegment Reset(long f ......
1.[http://www.javaalmanac.com] – Java¿ª·¢ÕßÄê¼øÒ»ÊéµÄÔÚÏß°æ±¾. ÒªÏë¿ìËٲ鵽ijÖÖJava¼¼ÇɵÄÓ÷¨¼°Ê¾Àý´úÂë, ÕâÊÇÒ»¸ö²»´íµÄÈ¥´¦.
2.[http://www.onjava.com] – O’ReillyµÄJavaÍøÕ¾. ÿÖܶ¼ÓÐÐÂÎÄÕÂ.
3.[http://java.sun.com] – ¹Ù·½µÄJava¿ª·¢ÕßÍøÕ¾ – ÿÖܶ¼ÓÐÐÂÎÄÕ·¢±í.
4.[http:/ ......
XMLÎļþ book.xml
<book>
<person>
<first>Kiran</first>
<last>Pai</last>
<age>22</age>
</person>
<person>
<first>Bill</first>
<last>Gates</last>
<age>46</age>
</person>
<person>
&l ......
¹éÄÉÒ»Ð©ÍøÉÏÈ¡JAVA·¾¶µÄ·½·¨£º
×¢Ã÷£ºÈç¹û´ÓANTÆô¶¯³ÌÐò£¬this.getClass().getResource("")È¡³öÀ´µÄ±È½Ï¹Ö£¬Ö±½ÓÓÃJAVAÃüÁîÐе÷ÊԾͿɳɹ¦¡£
µÃµ½classpathºÍµ±Ç°ÀàµÄ¾ø¶Ô·¾¶µÄһЩ·½·¨
»ñµÃCLASSPATHÖ®Íâ·¾¶µÄ·½·¨£º
URL base = this.getClass£¨£©.getResource£¨""£©£» //ÏÈ»ñµÃ±¾ÀàµÄËùÔÚλÖã¬Èç/home/popeye/ ......