我在做一个FTP客户端。
我已经用这个方法创建了一个FTP客户端:Android如何通过FTP上传文件和这段代码。可以向我的FTP-服务器发送包含字符串的txt-文件.
我的本地文件夹"/sdcard/ftp/“中有图片
现在我试图更改代码,文件夹中的所有jpg文件都可能由ftp客户端发送。
package de.android.datenuebertragung;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPConnectionClosedException;
import org.apache.commons.net.ftp.FTPFile;
import android.app.Activity;
import android.util.Log;
public class FTPManager extends Activity{
FTPClient con = new FTPClient();{
try
{
con.connect("host");
if (con.login("user", "password"))
{
// in application never use hardcoded paths
File folder = new File("/sdcard/ftp/");
File tempFile = null;
FTPFile[] tempFTPFile = null;
//get all files in folder
for(String fileInDir : folder.list()){
tempFile = new File(fileInDir);
tempFTPFile = con.listNames(tempFile.getFiles);
if(tempFTPFile!=null || tempFTPFile.length<=0){
con.upload(fileInDir);
}
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
try
{
con.logout();
con.disconnect();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}我在这些标记的单词(getFiles和upload)中有两个错误:
con.listNames(tempFile.getFiles)中的错误是: getFiles无法解析或不是字段
con.upload(fileInDir)中的另一个错误是:未为FTPClient类型定义方法上载(String)
我一整天都在努力解决这个问题。希望有人能帮我。也许发布修改后的代码。我是Android编程的绝对新手。
发布于 2012-06-10 17:09:49
如果您已经直接粘贴了代码,并且没有错误,那么这一行应该是getFiles(),而不是getFiles .
tempFTPFile = con.listNames(tempFile.getFiles);此外,我怀疑默认的传输模式将是ASCII (对于任何FTP客户端软件通常都是这样)。
试着打电话..。
con.setFileType(FTP.BINARY_FILE_TYPE);...before试图上传。
https://stackoverflow.com/questions/10970486
复制相似问题