androidftp上傳文件
/** * 通過ftp上傳文件 * @param url ftp伺服器地址 如: 192.168.1.110 * @param port 埠如 : 21 * @param username 登錄名 * @param password 密碼 * @param remotePath 上到ftp伺服器的磁碟路徑 * @param fileNamePath 要上傳的文件路徑 * @param fileName 要上傳的文件名 * @return */ FTPClient ftpClient = new FTPClient(); public String ftpUpload(String url, String port, String username,String password, String remotePath, String fileNamePath,String fileName) { FileInputStream fis = null; String returnMessage = "0"; try { ftpClient.connect(url, 21); ...
B. 如何用安卓手機建立個ftp伺服器,讓外網手機或電腦連接
你要一步一步地解決問題,不要試圖一下子就解決問題,因為涉及多方面的知識。
你先要在安卓手機把FTP先安裝起來,本地先訪問起來,再遠程訪問;
給你FTP服務端的APK程序你都沒有下載,再給你另一小巧版本miniftp。
接下來在路由器里用MAC的辦法固定手機的內網IP,以便將手機設為路由器的DMZ主機;
設法知道路由器的外網地址(訪問IP138網就能知道);
用Cuteftp客戶端以路由器公網IP訪問手機的ftp
C. 安卓上的ftp上傳不了,或檢查文件許可權,無法上傳該怎麼辦求大神解決
首先需要設置下FTP的配置
1.打開Serv-U控制台,點擊「限制和設置」--「為域配置高級FTP命令設置和行為」。
2.在FTP設置中找到OPTS UTF8命令,右擊禁用此命令
3.點擊下面的「全局屬性」。
4.在出來的FTP命令屬性選項卡中,「高級選項」里,把「對所有收發的路徑和文件名使用UFT-8編碼」前面的鉤去掉!
5.以後再上傳中文文件,就不會出現亂碼問題啦。
D. android FTP客戶端在模擬器上能夠正常下載和上傳,為什麼在真機上就不行了呢,總是連接不成功
我也是通過路由器連接的手機和電腦,我的上傳功能能在手機和模擬器中運行,可下載無論是在模擬器還是手機中都無法運行。
E. OutputStream out = ftpClient.appendFileStream為空,android FTP文件上傳。
看起來好像是做了cd操作,企圖cd到20130122_040622.jpg去,然後發現不存在,就報錯了
F. 手機怎麼上傳FTP文件,ftp上傳工具安卓
1、首先查看下要上傳文件的文件夾屬性是不是 777 的屬性。使用 FTP 軟體,查看目錄,在該目錄上點擊右鍵,選擇屬性,基本就可以查看到當前文件夾的屬性了,不是 777 的屬性,請修改為 777 後確認。 2、如果文件夾的屬性正確,請確定是不是您的空間已滿。譬如您購買了 2G 的虛擬空間,是不是空間已經滿了,這個一般會在虛擬主機提供的控制面板內查到。 3、如果空間仍有剩餘,請向虛擬主機提供商詢問您的 FTP 帳號是不是有對此目錄的讀寫屬性。 4、如果帳號的許可權也正確,請向虛擬主機提供商詢問是否是磁碟空間的統計有問題,請虛擬主機提供商幫您重新檢查一下磁碟空間的統計。這種情況一般在使用 FTP 軟體上傳失敗時會提示: Disk quota exceeded CODE: [COPY] Disk quota exceeded 這表示磁碟配額超過限制,可以讓空間商執行下面命令來重建一下統計即可。 quotaoff /www 關閉 quotacheck -mcv /www 重建 quotaon /www 打開 CODE: [COPY] quotaoff /www 關閉quotacheck -mcv /www 重建
G. 求高人賜教怎樣使用安卓文件管理器【文件大師】網頁管理手機和FTP伺服器功能可以支持批量上傳和下載不
很簡單啊。
手機連接WIFI.
打開大文件大師,點擊分享按鈕。會出現共享的三個方式:網頁,FTP和藍牙。
點擊網頁分享,文件大師會分配一個瀏覽器訪問地址和埠。類似這樣htttp://192.168.0.110/8080 . 你直接在網頁輸入htttp://192.168.0.110/8080就可以了。
點擊FTP分享,文件大師會分配一個FTP伺服器訪問地址和埠。類似這樣:htttp://192.168.0.110 埠2211. 你直接打開我的電腦,在地址欄輸入htttp://192.168.0.110:2211就可以了。
H. android中如何上傳圖片到FTP伺服器
在安卓環境下可以使用,在java環境下也可以使用,已經在Java環境下實現了功能,然後移植到了安卓手機上,其它都是一樣的。
[java] view plain
package com.photo;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
public class FileTool {
/**
* Description: 向FTP伺服器上傳文件
*
* @param url
* FTP伺服器hostname
* @param port
* FTP伺服器埠
* @param username
* FTP登錄賬號
* @param password
* FTP登錄密碼
* @param path
* FTP伺服器保存目錄,是linux下的目錄形式,如/photo/
* @param filename
* 上傳到FTP伺服器上的文件名,是自己定義的名字,
* @param input
* 輸入流
* @return 成功返回true,否則返回false
*/
public static boolean uploadFile(String url, int port, String username,
String password, String path, String filename, InputStream input) {
boolean success = false;
FTPClient ftp = new FTPClient();
try {
int reply;
ftp.connect(url, port);// 連接FTP伺服器
// 如果採用默認埠,可以使用ftp.connect(url)的方式直接連接FTP伺服器
ftp.login(username, password);//登錄
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
return success;
}
ftp.changeWorkingDirectory(path);
ftp.storeFile(filename, input);
input.close();
ftp.logout();
success = true;
} catch (IOException e) {
e.printStackTrace();
} finally {
if (ftp.isConnected()) {
try {
ftp.disconnect();
} catch (IOException ioe) {
}
}
}
return success;
}
// 測試
public static void main(String[] args) {
FileInputStream in = null ;
File dir = new File("G://pathnew");
File files[] = dir.listFiles();
if(dir.isDirectory()) {
for(int i=0;i<files.length;i++) {
try {
in = new FileInputStream(files[i]);
boolean flag = uploadFile("17.8.119.77", 21, "android", "android",
"/photo/", "412424123412341234_20130715120334_" + i + ".jpg", in);
System.out.println(flag);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}
以上為java代碼,下面是android代碼。
[java] view plain
package com.ftp;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new uploadThread().start();
}
class uploadThread extends Thread {
@Override
public void run() {
FileInputStream in = null ;
File dir = new File("/mnt/sdcard/DCIM/Camera/test/");
File files[] = dir.listFiles();
if(dir.isDirectory()) {
for(int i=0;i<files.length;i++) {
try {
in = new FileInputStream(files[i]);
boolean flag = FileTool.uploadFile("17.8.119.77", 21, "android", "android",
"/", "412424123412341234_20130715120334_" + i + ".jpg", in);
System.out.println(flag);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}
}
I. Android開發訪問FTP伺服器
commons-net.jar裡面有ftp相關的介面,這個是我自己封裝的一個類
import java.io.FileInputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
public class FTPUtils {
/**
* 通過ftp上傳文件
*
* @param fileNamePath
* 要上傳的文件路徑 , 以'結'尾
* @param fileName
* 要上傳的文件名
* @return 如果成功返回"" , 否則返回錯誤結果
*/
public static String ftpUpload(String sdcardFullFileName, String fileName, String ftpPath) {
FTPClient ftpClient = new FTPClient();
FileInputStream fis = null;
String returnMessage = "";
try {
ftpClient.connect(ConnectConfig.ftpIP, ConnectConfig.ftpPort);
boolean loginResult = ftpClient.login(ConnectConfig.ftpUserName, ConnectConfig.ftpPassWord);
int returnCode = ftpClient.getReplyCode();
if (loginResult && FTPReply.isPositiveCompletion(returnCode)) {// 如果登錄成功
String[] splits = ftpPath.split("/");
String temps = splits[0];
ftpClient.makeDirectory(temps);
for(int i=1;i<splits.length;i++){
temps += "/" + splits[i];
ftpClient.makeDirectory(temps);
}
// ftpClient.makeDirectory(ftpPath);
// 設置上傳目錄
ftpClient.changeWorkingDirectory(ftpPath);
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
fis = new FileInputStream(sdcardFullFileName);
// boolean result = ftpClient.(fileName, fis);
boolean result = ftpClient.storeFile(fileName, fis);
if(result){
returnMessage = ""; // 上傳成功
}else{
returnMessage = "上傳失敗";
}
} else {// 如果登錄失敗
returnMessage = "登錄FTP時失敗,FTP用戶名或者密碼錯誤!";
}
} catch (IOException e) {
// ftp發送出現異常
e.printStackTrace();
returnMessage = "FTP客戶端出錯!" + e;
} finally {
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
return returnMessage;
}
}
J. 如何用安卓手機建立個ftp伺服器,讓外網手機或電腦連接。
樓主,你可以裝個ET文件管理器,裡面有一個FTP設置的。