-
大小: 100KB文件類型: .zip金幣: 2下載: 0 次發布日期: 2021-06-16
- 語言: Java
- 標簽:
資源簡介
一個還好的Android手機無線(WIFI)連接無線路由實現局域網
連接電腦后,進行文件傳送的Socket/TCP實例。
需要手機WIFI連接局域網,并設定IP地址,地址可在程序文件找到,或者自行對應修改,需要統一。

代碼片段和文件信息
package?com.wal.tcpclient;
import?java.io.DataOutputStream;
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.InputStream;
import?java.io.OutputStream;
import?java.net.Socket;
import?java.util.Calendar;
import?java.util.Scanner;
/**
?*?@author?jace
?*?
?*?Functions:
?*? 1.TCPClient,運行與Java上的帶主函數的程序客戶端
?*?
?*? 2.實現從電腦硬盤上傳送文件到局域網內的WIFI連接的Android客戶端機器
?*?
?*? 3.該程序實現的為Linux下的文件讀取,Windows用戶需要自行修改幾句代碼,便可簡單實現(代碼已經注釋)
?*?
?*? 4.自己動手豐衣足食
?*
?*/
public?class?TCPClient?{
/**
?*?@param?args
?*/
public?static?void?main(String[]?args)?{
try?{
//創建TCP客戶端的Socket
Socket?mTCPSocket?=?new?Socket(“172.16.167.82“?8888);
System.out.println(“-----------------請輸入需傳送的文件路徑-----------------“);
System.out.println(“---------------格式例如:/home/jace/mm.jpg---------------“);
Scanner?sc?=?new?Scanner(System.in);
String?strPath?=?sc.next().toString();
System.out.println(“文件路徑為:strPath?=?“?+?strPath?+?“???strPath的長度?=?“?+?strPath.length());
//創建輸入流,并設置輸入流傳遞的文件
InputStream?mInputStream?=?new?FileInputStream(strPath);
//創建輸出流對象并獲取輸出流
OutputStream?mOutputStream?=?mTCPSocket.getOutputStream();
//創建數據輸出流,并將獲得的文件輸出流的數據
DataOutputStream?mDataOutputStream?=?new?DataOutputStream(mOutputStream);
//創建字節數組
byte[]?buffer?=?new?byte[1024?*?4];
int?temp?=?0;
//Windows系統文件路徑測試
// String?strWindowsPath?=?“C:\\Program?Files\\Alwil?Software\\Avast4\\ashDisp.exe“;
//字符串(文件路徑)分割,存放于String數組中
String[]?strDir?=?strPath.split(File.separator);
// String[]?strDir2?=?strWindowsPath.split(“\\\\“);
//打印文件名
System.out.println(“Linux?fileName?=?“?+?strDir[strDir.length?-?1]);
// System.out.println(“Windows?FileName?=?“?+?strDir2[strDir2.length?-?1]);
//將分割出來的文件名,寫入數據輸出流中
mDataOutputStream.writeUTF(strDir[strDir.length?-?1]?+?“!“?+?mInputStream.available());
//打印開始傳送提示,并顯示當前時間
System.out.println(“-----------------數據開始傳送-----------------“);
System.out.println(“--現在系統時間:?“?+?Calendar.getInstance().getTime()?+?“--“);
long?length?=?0;
System.out.println(“length??One------>“?+?mInputStream.available());
//通過循環讀取數據進字節數組,并寫進數據輸出流中
while?((temp?=?mInputStream.read(buffer))?!=?-1)?{
// mOutputStream.write(buffer?0?temp);
mDataOutputStream.write(buffer?0?temp);
//疊加讀取緩沖區的字節數大小
length?+=?temp;
}
//打印寫入緩沖區的文件的字節長度
System.out.println(“length?Two----->“?+?length);
// mDataOutputStream.writeLong(length);
//刷新并推進輸出流
mDataOutputStream.flush();
//打印數據傳送完畢提示,并顯示當前系統時間
System.out.println(“----------------------------------------------“);
System.out.println(“-------------------數據傳送完畢-----------------“);
System.out.println(“-----完成時間:?“?+?Calendar.getInstance().getTime()?+?“-----“);
System.out.println(“----------------------------------------------“);
// while?((temp?=?mDataInputStream.read(buffer))?!=?-1)?{
// mDataOutputStre
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????3214??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\bin\com\wal\tcpclient\TCPClient.class
?????文件????????2391??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\bin\com\wal\udpclient\UDPClient.class
?????文件????????3825??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\src\com\wal\tcpclient\TCPClient.java
?????文件????????1937??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\src\com\wal\udpclient\UDPClient.java
?????文件?????????352??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R$attr.class
?????文件?????????444??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R$drawable.class
?????文件?????????475??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R$id.class
?????文件?????????406??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R$layout.class
?????文件?????????613??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R$string.class
?????文件?????????559??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\R.class
?????文件????????3350??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\SocketDemo01Activity$1.class
?????文件????????2560??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\SocketDemo01Activity$2.class
?????文件????????6397??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\com\wal\socketactivity\SocketDemo01Activity.class
?????文件????????1166??2011-08-29?05:04??SocketDemo\SocketDemo01\gen\com\wal\socketactivity\R.java
?????文件???????13517??2011-08-29?05:04??SocketDemo\SocketDemo01\src\com\wal\socketactivity\SocketDemo01Activity.java
?????文件????????2574??2011-08-29?05:04??SocketDemo\SocketDemo01\res\drawable\icon.png
?????文件????????7599??2011-08-29?05:04??SocketDemo\SocketDemo01\res\drawable\senddata.jpg
?????文件????????4147??2011-08-29?05:04??SocketDemo\SocketDemo01\res\drawable-hdpi\icon.png
?????文件????????1723??2011-08-29?05:04??SocketDemo\SocketDemo01\res\drawable-ldpi\icon.png
?????文件????????2574??2011-08-29?05:04??SocketDemo\SocketDemo01\res\drawable-mdpi\icon.png
?????文件????????1517??2011-08-29?05:04??SocketDemo\SocketDemo01\res\layout\main.xm
?????文件?????????478??2011-08-29?05:04??SocketDemo\SocketDemo01\res\values\strings.xm
?????文件?????????617??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\.settings\org.eclipse.jdt.core.prefs
?????文件???????29245??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\SocketDemo01.apk
?????文件???????10980??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\classes.dex
?????文件???????21772??2011-08-29?05:04??SocketDemo\SocketDemo01\bin\resources.ap_
?????文件?????????295??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\.classpath
?????文件?????????382??2011-08-29?05:03??SocketDemo\Client_For_SocketDemo01\.project
?????文件?????????273??2011-08-29?05:04??SocketDemo\SocketDemo01\.classpath
?????文件?????????815??2011-08-29?05:04??SocketDemo\SocketDemo01\.project
?????文件????????1474??2011-08-29?05:04??SocketDemo\SocketDemo01\AndroidManifest.xm
............此處省略36個文件信息
評論
共有 條評論