工具/材料
1、安卓手機2臺+安裝軟件“ftp服務“
2、電腦+VMware+Linux環境+java環境
3、commons-net.jar包
預備知識
1、在VMware中安裝Linux系統
2、配置java環境
3、掌握vi命令等Linux常用命令
前期準備
1、保證手機和電腦在同一局域網下
2、將電腦防火牆關閉
3、用電腦下載好commons-net.jar包
方法/步驟
1、安卓手機下載安裝“Ftp服務”這款軟件,連接局域網>>>可以看到手機的ip地址和端口號>>>啓動FTP>>>點擊右上角三點標誌可進入設置
選擇允許被電腦訪問的目錄>>>FTP授權認證設置爲需要用戶名密碼認證>>>用戶名我們用root>>>密碼我們設置爲123456>>>保存。
另一部手機做一樣的操作
2、在電腦中選定要上傳的ftp文件b.txt,記住該文件的路徑
[root@RedhatLinux chakan]# pwd
/home/chenriyang/temp/chakan
[root@RedhatLinux chakan]# ls
b.txt
3、寫一個java程序
[root@RedhatLinux test]# pwd
/home/chenriyang/temp/test
[root@RedhatLinux test]# ls
commons-net-3.5.jarot@RedhatLinux test]# vi FtpDemo.java
import java.io.IOException;
import java.net.SocketException;
import java.io.*;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import java.nio.charset.Charset;
/*定義類*/
public class FtpDemo{
public static void conn(){
String ips[][]={
{"192.168.20.215","2121"},//第一臺手機的ip地址,端口號
{"192.168.20.166","2121"} //第二臺手機的ip地址,端口號
};
FTPClient ftp = new FTPClient();
for(int i = 0; i < ips.length; i++){
try{
ftp.connect(ips[i][0],Integer.parseInt(ips[i][1]));//連接
ftp.login("root","123456"); //登錄
ftp.setCharset(Charset.forName("UTF-8"));
ftp.setControlEncoding("UTF-8");
/*上傳文件
註釋:"/b.txt" 爲ftp文件名
"/home/chenriyang/temp/chakan/b.txt" 爲該文件的路徑
*/
ftp.storeFile("/b.txt",new FileInputStream("/home/chenriyang/temp/chakan/b.txt"));
System.out.println("ip:"+ips[i][0]+"-------傳輸成功!");
FTPFile files[] = ftp.listDirectories();
for (int j = 0; j < files.length; j++){
FTPFile file =files[j];
String fileName = file.getName();
System.out.println(fileName);
}
} catch (SocketException e){
e.printStackTrace();
}catch (IOException e){
e.printStackTrace();
}finally{
try{
ftp.abor();
}catch (IOException e){
e.printStackTrace();
}
}
}
}
public static void main(String[] args){
conn();
}
}
4、編譯,運行
[root@RedhatLinux test]# javac -cp .:commons-net-3.5.jar FtpDemo.java
[root@RedhatLinux test]# java -cp .:commons-net-3.5.jar FtpDemo
5、在手機中看到手機的根目錄下多了b.txt這個文件