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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xfile.java

?? JXTA教程源碼例子,比較經典,值得好好研究啊!
?? JAVA
字號:
/**《JXTA網絡編程》例程
*"第五章  JXTA深入編程" 即時消息軟件XChat  
*
@作者 慈黎利
@單位 清華大學計算機系軟件所知識工程組
@版本 1.0
@聯系方式 cili@163.com
@描述 P2PSockst 負責在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("002");
		pps.setInListener(this);
		pps.bind();
		pps.setOutListener(pps);
		pps.connect("001");
	}     
	/**
	* 實現InputPipe 的監聽器
	* @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;}
		
	}
	
	/**
	* 處理對共享文件列表的請求,向對方發送包含共享文件名的列表的消息
	* @param mi 獲得的Message
	*/
	public void doFileListRequest(MessageImpl mi) {
		System.out.println("捕獲一個本地共享文件列表的請求!");
		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("捕獲一個共享文件的列表!");
		MessageElementImpl mei=(MessageElementImpl)mi.getElement(BaseMessage.FILE_LIST);
		this.displayFile(mei.getStream());		
	}
	
	/**
	* 處理對某個共享文件的下載的求情,向對方發送含有指定共享文件流的消息
	* @param mi 獲得的Message
	*/
	public void doFileDownloadRequest(MessageImpl mi) {
		System.out.println("捕獲一個下載本地共享文件的請求!");
		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("捕獲一個需要下載的共享文件!");
		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("捕獲一個上傳的共享文件!");
		MessageElementImpl mei=(MessageElementImpl)mi.getElement(BaseMessage.FILE_UPLOAD);
		String file_name=mi.getString(bm.FILE_NAME);
		save2File(mei.getStream(),file_name);	
	}
	
	/**
	* 把流中的信息寫道文件中
	* @param is  數據源流
	* @param fname  將要寫入的文件
	*/
	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("寫入文件錯誤:"+ioe);		
		}			
	}
	
	/**
	* 把文件讀取到流中
	* @param file  將要讀入的文件
	* @return 返回包含文件信息的流
	*/
	public InputStream file2Stream(String file) {
		try {
			FileInputStream fis=new FileInputStream("share/"+file);
			return fis;
		}catch (FileNotFoundException fnfe) {
			System.out.println("無法讀取本地文件");
			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("獲取共享文件名出錯");
			System.exit(-1);
		
		}catch (IOException ioe) {
			System.err.println("獲取共享文件名發生I/O錯誤");
			System.exit(-1);
		} 
		return null;
	}
	
	/**
	* 將流中的內容顯示出來
	* @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("顯示文件發生I/O錯誤");
			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(xf.file2Stream("Upload.txt"),xf.pps.getInputPipeName(),
			xf.pps.getOutputPipeName(),BaseMessage.FILE_UPLOAD,
			"Upload.txt"));
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品福利在线| 国产欧美va欧美不卡在线| 欧美草草影院在线视频| 中文字幕在线不卡| 日本亚洲视频在线| av一本久道久久综合久久鬼色| 51精品秘密在线观看| 亚洲男人的天堂av| 国产精品一区二区在线观看不卡| 欧美日韩亚洲综合在线 | 国产一区二区三区高清播放| 欧美日韩你懂得| 亚洲精品水蜜桃| 91污片在线观看| 国产精品三级在线观看| 国产麻豆精品95视频| 日韩视频中午一区| 午夜视频在线观看一区二区| 91麻豆国产香蕉久久精品| 中文在线一区二区| 国产麻豆精品95视频| 久久影院电视剧免费观看| 美腿丝袜一区二区三区| 日韩一区二区精品| 蜜臀av性久久久久蜜臀av麻豆| 欧美日韩美少妇| 亚洲国产一区在线观看| 在线视频国产一区| 亚洲一区二区三区视频在线| 色老综合老女人久久久| 一区二区三区四区视频精品免费| 成人app下载| 中文字幕一区三区| 91一区在线观看| 亚洲美女在线国产| 欧美性感一区二区三区| 亚洲123区在线观看| 欧美色成人综合| 免费日韩伦理电影| 欧美精品一区二| 国产 欧美在线| 国产精品看片你懂得| 9i在线看片成人免费| 亚洲精品成人天堂一二三| 欧美日韩激情一区| 蜜桃视频一区二区| 国产精品网站一区| 欧美在线影院一区二区| 午夜av一区二区三区| 欧美哺乳videos| 国产69精品久久久久毛片 | youjizz久久| 亚洲欧美日韩国产成人精品影院| 色播五月激情综合网| 午夜婷婷国产麻豆精品| 欧美成人精精品一区二区频| 国产精品综合在线视频| 亚洲另类一区二区| 欧美成人精品福利| 99国产精品久久久| 蜜臀av性久久久久蜜臀aⅴ四虎 | caoporn国产精品| 亚洲一区二区美女| 久久久久久一二三区| 一本大道av一区二区在线播放| 午夜a成v人精品| 中文字幕不卡在线| 欧美精品在线一区二区| 成人黄色综合网站| 免费亚洲电影在线| 亚洲精品美腿丝袜| 久久久国际精品| 欧美日韩大陆在线| 成人精品免费看| 美女在线一区二区| 一区二区三区在线观看动漫| 久久久久久免费网| 在线播放亚洲一区| 色综合婷婷久久| 国产一区久久久| 亚州成人在线电影| 日韩一区在线看| 亚洲精品一区二区三区蜜桃下载 | 99re热这里只有精品免费视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲三级久久久| 久久亚洲精品国产精品紫薇| 欧美日韩国产三级| 色综合天天性综合| 国产成人av电影在线观看| 日韩精品视频网| 亚洲成av人片在www色猫咪| 中文字幕色av一区二区三区| 精品对白一区国产伦| 这里只有精品99re| 日本高清不卡视频| 91丨国产丨九色丨pron| 国产.欧美.日韩| 国产精品一级黄| 精品一区二区在线观看| 性做久久久久久免费观看| 亚洲乱码日产精品bd| 国产精品白丝在线| 国产精品久久久久久久裸模| 久久久高清一区二区三区| 26uuu国产日韩综合| 精品成人a区在线观看| 日韩欧美国产综合一区| 日韩一二三四区| 日韩欧美久久久| 精品国产91乱码一区二区三区| 欧美一区二区三区不卡| 欧美一区二区三区影视| 日韩欧美高清在线| 精品国产乱码久久| 国产无人区一区二区三区| 久久久不卡影院| 国产精品麻豆欧美日韩ww| 国产精品护士白丝一区av| 中文字幕中文字幕在线一区 | 国产在线精品免费| 国产毛片一区二区| 北条麻妃国产九九精品视频| 91蜜桃传媒精品久久久一区二区| 99re亚洲国产精品| 欧美日韩一区二区三区高清| 555www色欧美视频| 2021国产精品久久精品| 国产精品女主播在线观看| 亚洲欧美成人一区二区三区| 亚洲成人福利片| 麻豆成人av在线| 成人一道本在线| 欧美日韩综合在线| 欧美xxxxxxxxx| 国产精品无人区| 亚洲国产aⅴ天堂久久| 久久精品99国产精品日本| 成人高清免费观看| 欧美色区777第一页| 欧美v日韩v国产v| 国产精品视频麻豆| 亚洲mv大片欧洲mv大片精品| 精品一区二区三区免费观看| 成人免费高清在线| 欧美日韩国产另类不卡| 久久综合九色综合97婷婷女人| 国产精品国产自产拍在线| 无码av免费一区二区三区试看| 久久精品国产亚洲一区二区三区| 高清国产午夜精品久久久久久| 色综合久久六月婷婷中文字幕| 日韩一区二区视频在线观看| 中文av一区二区| 日本一不卡视频| 色哟哟一区二区三区| 精品日韩一区二区三区| 中文字幕综合网| 国产麻豆一精品一av一免费| 色天使色偷偷av一区二区| 精品国产一区二区三区不卡| 亚洲精品欧美激情| 国产一区二区在线免费观看| 欧美无人高清视频在线观看| 国产欧美精品一区| 另类专区欧美蜜桃臀第一页| 日本韩国欧美国产| 欧美高清在线一区二区| 久久99精品一区二区三区三区| 在线观看国产日韩| 中文字幕二三区不卡| 狠狠色综合日日| 91精品一区二区三区在线观看| 中文字幕一区二区三区视频| 国产在线国偷精品免费看| 欧美一区二区成人6969| 一区二区三区精品| 91在线一区二区| 成人免费在线视频观看| 国产呦萝稀缺另类资源| 日韩精品中午字幕| 免费人成在线不卡| 91精选在线观看| 午夜影视日本亚洲欧洲精品| 91日韩精品一区| 中文字幕制服丝袜一区二区三区| 国产永久精品大片wwwapp| 精品1区2区在线观看| 久久精品国内一区二区三区| 日韩视频一区在线观看| 午夜精品久久久久久久久久| 欧美三级资源在线| 午夜欧美视频在线观看 | 欧美精品一区二区久久婷婷| 日韩av成人高清| 日韩一区二区三区免费看| 美女尤物国产一区| 欧美精品一区二区不卡| 国产麻豆成人精品| 日本一区二区三区四区|