亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? xfile.java

?? JXTA教程源碼例子,比較經(jīng)典,值得好好研究啊!
?? JAVA
字號(hào):
/**《JXTA網(wǎng)絡(luò)編程》例程
*"第五章  JXTA深入編程" 即時(shí)消息軟件XFile  
*
@作者 慈黎利
@單位 清華大學(xué)計(jì)算機(jī)系軟件所知識(shí)工程組
@版本 1.0
@聯(lián)系方式 cili@163.com
@描述 利用P2PSocket 在Peer 之間傳輸文件
Copyright 2002
*/

import java.io.*;
import java.net.*;
import net.jxta.pipe.*; 
import net.jxta.impl.endpoint.*;
import demo.p2psocket.*;

//源程序 XFile.java

public class XFile implements PipeMsgListener {
	P2PSocket pps=new P2PSocket(); 
	BaseMessage bm=new BaseMessage();
	
	public XFile() {
		pps.setInputPipeName("001");
		pps.setInListener(this);
		pps.bind();
		pps.setOutListener(pps);
		pps.connect("002");
	}     
	/**
	* 實(shí)現(xiàn)InputPipe 的監(jiān)聽(tīng)器
	* @param event 獲得消息事件
	*/
	public void pipeMsgEvent ( PipeMsgEvent event ){
		String temp=null;
		MessageImpl mi=(MessageImpl) event.getMessage();
		
		temp=mi.getString(BaseMessage.FILE_MESSAGE_TYPE);
		if (temp.equals(BaseMessage.FILE_LIST_REQUEST))  
			{ doFileListRequest(mi); return;}
		if (temp.equals(BaseMessage.FILE_DOWNLOAD_REQUEST))
			{ doFileDownloadRequest(mi); return;}
		if (temp.equals(BaseMessage.FILE_DOWNLOAD))
			{ doFileDownload(mi); return;}
		if (temp.equals(BaseMessage.FILE_LIST))
			{ doFileList(mi); return;}
    	if (temp.equals(BaseMessage.FILE_UPLOAD))
    		{ doFileUpload(mi); return;}
		
	}
	
	/**
	* 處理對(duì)共享文件列表的請(qǐng)求,向?qū)Ψ桨l(fā)送包含共享文件名的列表的消息
	* @param mi 獲得的Message
	*/
	public void doFileListRequest(MessageImpl mi) {
		System.out.println("捕獲一個(gè)本地共享文件列表的請(qǐng)求!");
		pps.send(bm.newFileMessage(this.listFile(),pps.getOutputPipeName(),
				pps.getInputPipeName(),bm.FILE_LIST,"Temp"));		
	}
	
	/**
	* 處理獲得的文件列表消息
	* @param mi 獲得的Message
	*/
	public void doFileList(MessageImpl mi) {
		System.out.println("捕獲一個(gè)共享文件的列表!");
		MessageElementImpl mei=(MessageElementImpl)mi.getElement(BaseMessage.FILE_LIST);
		this.displayFile(mei.getStream());		
	}
	
	/**
	* 處理對(duì)某個(gè)共享文件的下載的求情,向?qū)Ψ桨l(fā)送含有指定共享文件流的消息
	* @param mi 獲得的Message
	*/
	public void doFileDownloadRequest(MessageImpl mi) {
		System.out.println("捕獲一個(gè)下載本地共享文件的請(qǐng)求!");
		String file_name=mi.getString(bm.FILE_NAME);
		pps.send(bm.newFileMessage(file2Stream(file_name),pps.getOutputPipeName(),
				pps.getInputPipeName(),bm.FILE_DOWNLOAD,file_name));
	}
	
	/**
	* 處理獲得的共享文件消息
	* @param mi 獲得的Message
	*/
	public void doFileDownload(MessageImpl mi) {
		System.out.println("捕獲一個(gè)需要下載的共享文件!");
		MessageElementImpl mei=(MessageElementImpl)mi.getElement(BaseMessage.FILE_DOWNLOAD);
		String file_name=mi.getString(bm.FILE_NAME);
		save2File(mei.getStream(),file_name);		
	}
	
	/**
	* 處理上傳的共享文件消息
	* @param mi 獲得的Message
	*/
	public void doFileUpload(MessageImpl mi) {
		System.out.println("捕獲一個(gè)上傳的共享文件!");
		MessageElementImpl mei=(MessageElementImpl)mi.getElement(BaseMessage.FILE_UPLOAD);
		String file_name=mi.getString(bm.FILE_NAME);
		save2File(mei.getStream(),file_name);	
	}
	
	/**
	* 把流中的信息寫(xiě)道文件中
	* @param is  數(shù)據(jù)源流
	* @param fname  將要寫(xiě)入的文件
	*/
	public void save2File(InputStream is,String fname) {
		int length;
		byte buf[]=new byte[1024];
		try {
			FileOutputStream fos=new FileOutputStream("share/"+fname);
			BufferedOutputStream bos=new BufferedOutputStream(fos);
			BufferedInputStream bis=new BufferedInputStream(is);
			while ((length=bis.read(buf,0,1024))!=-1) {
				bos.write(buf,0,length);
				bos.flush();
			}
			bis.close();
			bos.close();
			fos.close();			
		}catch (IOException ioe) {
			System.out.println("寫(xiě)入文件錯(cuò)誤:"+ioe);		
		}			
	}
	
	/**
	* 把文件讀取到流中
	* @param file  將要讀入的文件
	* @return 返回包含文件信息的流
	*/
	public InputStream file2Stream(String file) {
		try {
			FileInputStream fis=new FileInputStream("share/"+file);
			return fis;
		}catch (FileNotFoundException fnfe) {
			System.out.println("無(wú)法讀取本地文件");
			System.exit(-1);
		}
		return null;
	}
	
	/**
	*  將指定目錄下的文件名讀入流中
	* @return 返回包含文件名列表的流
	*/
	public InputStream listFile() {
		try {
			String userpath=System.getProperty("user.dir");
			URL url=new URL("file:///"+userpath+"/share");
			return url.openStream();
		}catch (MalformedURLException murle) {
			System.err.println("獲取共享文件名出錯(cuò)");
			System.exit(-1);
		
		}catch (IOException ioe) {
			System.err.println("獲取共享文件名發(fā)生I/O錯(cuò)誤");
			System.exit(-1);
		} 
		return null;
	}
	
	/**
	* 將流中的內(nèi)容顯示出來(lái)
	* @param is  將要顯示的流
	*/
	public void displayFile(InputStream is) {
		try {
			BufferedReader br=new BufferedReader(new InputStreamReader(is));
			String s=br.readLine();
			while (s!=null) {
				toScreen(s);
				s=br.readLine();
			}
		}catch (IOException ioe) {
			System.err.println("顯示文件發(fā)生I/O錯(cuò)誤");
			System.exit(-1);
		} 	
	}
	
	/**
	* 顯示字符串
	* @param s 被顯示的字符串
	*/
	public void toScreen (String s) {
		System.out.println(s);
	}
	
	public static void main(String args[]) {
		XFile xf=new XFile();
		xf.pps.send(xf.bm.newFileMessage(null,null,
			null,BaseMessage.FILE_LIST_REQUEST,"Temp"));
		xf.pps.send(xf.bm.newFileMessage(null,null,null,BaseMessage.FILE_DOWNLOAD_REQUEST,
			"Download.txt"));
	}
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
风间由美性色一区二区三区| 日本韩国欧美国产| 亚洲午夜久久久久| 精品欧美乱码久久久久久| 色悠久久久久综合欧美99| 国产乱妇无码大片在线观看| 亚洲中国最大av网站| 国产精品对白交换视频| 欧美大片在线观看| 欧美日韩成人综合在线一区二区| 风间由美中文字幕在线看视频国产欧美| 亚洲超丰满肉感bbw| 亚洲欧洲精品成人久久奇米网| 337p日本欧洲亚洲大胆色噜噜| 欧美日韩一区高清| 色国产精品一区在线观看| 国产精品一品二品| 久久福利视频一区二区| 肉色丝袜一区二区| 亚洲综合男人的天堂| 国产精品国产三级国产aⅴ入口 | 一区二区高清在线| 日本一区二区在线不卡| 久久综合久久99| 日韩欧美视频一区| 欧美一区二区三区的| 欧美无砖专区一中文字| 在线一区二区三区做爰视频网站| 成人国产精品免费观看动漫| 蜜臀av一级做a爰片久久| 日韩精品每日更新| 午夜精品久久久久久久99樱桃| 一区二区三区国产豹纹内裤在线| 日韩码欧中文字| 亚洲日本一区二区三区| 亚洲欧洲性图库| 亚洲精品亚洲人成人网| 亚洲女性喷水在线观看一区| 亚洲色图制服诱惑| 亚洲欧美另类小说| 亚洲午夜电影在线观看| 亚洲va国产天堂va久久en| 亚洲第四色夜色| 日韩精品电影一区亚洲| 久久精品国产亚洲5555| 久久精品国产精品青草| 国产精品99久久久久久宅男| 国产91精品欧美| 97精品国产露脸对白| 欧美中文字幕一二三区视频| 欧美日韩国产小视频在线观看| 欧美日韩中字一区| 日韩视频免费观看高清完整版| 日韩精品在线一区二区| 国产视频一区二区三区在线观看| 欧美激情资源网| 亚洲激情图片一区| 日韩黄色小视频| 国产在线麻豆精品观看| 成人精品gif动图一区| 色综合中文综合网| 日韩一区欧美小说| 亚洲韩国精品一区| 美国三级日本三级久久99 | 99国产精品久久久久久久久久久 | www.亚洲激情.com| 在线一区二区视频| 日韩欧美中文一区二区| 国产欧美1区2区3区| 一区二区三区四区av| 日韩二区三区在线观看| 国产一区二区三区在线观看精品| 国产成人av电影在线观看| 欧美羞羞免费网站| 91精品91久久久中77777| 欧美自拍丝袜亚洲| 日韩一区二区三区电影| 中国av一区二区三区| 午夜精品福利视频网站| 国产一区二区视频在线| 日本高清成人免费播放| 精品福利二区三区| 亚洲三级在线看| 日日噜噜夜夜狠狠视频欧美人| 久久99精品一区二区三区| 91在线观看高清| 日韩欧美国产wwwww| 亚洲蜜桃精久久久久久久| 九九热在线视频观看这里只有精品| 不卡的av电影| 日韩精品中文字幕一区二区三区| 亚洲欧美日韩国产另类专区| 蜜臀久久99精品久久久久久9| 91天堂素人约啪| 精品久久久网站| 亚洲国产精品视频| 不卡的av在线| 久久免费偷拍视频| 日韩电影网1区2区| 在线免费观看视频一区| 久久女同性恋中文字幕| 日韩精品乱码免费| 欧美午夜宅男影院| 亚洲欧美日韩精品久久久久| 精品一区中文字幕| 欧美一级专区免费大片| 一区二区高清免费观看影视大全| 国产aⅴ综合色| 精品国产免费人成在线观看| 婷婷一区二区三区| 91麻豆精东视频| 国产精品美女一区二区三区| 韩国v欧美v亚洲v日本v| 欧美一区二区美女| 午夜视频一区二区| 欧美视频精品在线观看| 亚洲精品免费播放| 97精品超碰一区二区三区| 亚洲国产精品二十页| 国产一区二区电影| 久久综合999| 国产在线麻豆精品观看| 亚洲精品在线观看视频| 久久99热这里只有精品| 正在播放亚洲一区| 石原莉奈在线亚洲二区| 欧美日韩精品系列| 亚洲va欧美va国产va天堂影院| 91久久精品网| 洋洋成人永久网站入口| 91麻豆国产自产在线观看| 亚洲三级电影全部在线观看高清| 成人一区二区三区中文字幕| 国产欧美视频在线观看| 成人午夜免费电影| 国产精品女主播av| 91麻豆精东视频| 亚洲综合色婷婷| 欧美精品精品一区| 麻豆精品视频在线观看| 欧美videos中文字幕| 国产毛片一区二区| 中文字幕巨乱亚洲| 99久久精品免费精品国产| 日韩伦理av电影| 在线免费视频一区二区| 午夜视频一区二区| 欧美大片在线观看一区二区| 国内精品久久久久影院薰衣草| 2021久久国产精品不只是精品| 国产成人av一区| 亚洲男人天堂一区| 69精品人人人人| 韩国精品在线观看| 最新日韩av在线| 欧美日韩在线精品一区二区三区激情| 亚洲va欧美va人人爽午夜| 日韩片之四级片| 大美女一区二区三区| 一区二区三区高清在线| 日韩视频免费观看高清完整版在线观看 | www.66久久| 亚洲不卡av一区二区三区| 欧美mv和日韩mv国产网站| 岛国精品在线观看| 亚洲成a人在线观看| 日韩精品一区二区三区视频播放 | 91成人看片片| 日韩黄色免费网站| 国产午夜精品一区二区三区嫩草| 色天天综合久久久久综合片| 婷婷久久综合九色综合伊人色| 亚洲精品在线三区| 色偷偷成人一区二区三区91| 免费成人在线视频观看| 一区在线中文字幕| 欧美xxxxx牲另类人与| 91小视频在线免费看| 久久国产婷婷国产香蕉| 亚洲区小说区图片区qvod| 精品入口麻豆88视频| 在线观看一区不卡| 国产在线播精品第三| 亚洲成人激情社区| 中文字幕一区免费在线观看| 日韩一区二区免费视频| 色猫猫国产区一区二在线视频| 久久99精品视频| 亚洲一区二区三区在线| 国产精品乱子久久久久| 91精品国产麻豆| 色综合中文综合网| 亚洲永久免费av| 久久久综合九色合综国产精品| 欧美午夜寂寞影院| 成人午夜视频在线观看| 久久97超碰色| 首页国产欧美久久| 亚洲综合激情小说| 亚洲天堂2014|