Android Can';t使用FTP将文件上载到主机
我想使用FTP协议将图像文件从android设备的存储卡上载到主机服务器。但在测试运行期间,我遇到了一个无法解决的错误。希望人们能帮助我 源代码Android Can';t使用FTP将文件上载到主机,android,ftp,Android,Ftp,我想使用FTP协议将图像文件从android设备的存储卡上载到主机服务器。但在测试运行期间,我遇到了一个无法解决的错误。希望人们能帮助我 源代码 public class FTP extends Activity implements OnClickListener { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setConten
public class FTP extends Activity implements OnClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ftp);
Button upload=(Button)findViewById(R.id.button1);
upload.setOnClickListener(this);
}
public void goforIt(){
FTPClient con = null;
try
{
con = new FTPClient();
con.connect("longvan.webatu.com");
if (con.login("a4602996", "25251325thanhtung"))
{
con.enterLocalPassiveMode(); // important!
con.setFileType(FTPClient.BINARY_FILE_TYPE);
String data = "/sdcard/paint/takeshi.jpg";
FileInputStream in = new FileInputStream(new File(data));
boolean result = con.storeFile("/paint/takeshi.jpg", in);
in.close();
if (result) Log.v("upload result", "succeeded");
con.logout();
con.disconnect();
Toast.makeText(this, "Tai len thanh cong!", Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(this, "Ket noi that bai!", Toast.LENGTH_LONG).show();
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch (arg0.getId()) {
case R.id.button1:
goforIt();
break;
default:
break;
}
}
}
错误日志
12-28 16:35:04.039: E/AndroidRuntime(11942): java.lang.NoClassDefFoundError: org.apache.commons.net.ftp.FTPClient
12-28 16:35:04.039: E/AndroidRuntime(11942): at com.example.ftp.FTP.goforIt(FTP.java:31)
12-28 16:35:04.039: E/AndroidRuntime(11942): at com.example.ftp.FTP.onClick(FTP.java:64)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.view.View.performClick(View.java:3558)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.view.View$PerformClick.run(View.java:14157)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.os.Handler.handleCallback(Handler.java:605)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.os.Handler.dispatchMessage(Handler.java:92)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.os.Looper.loop(Looper.java:137)
12-28 16:35:04.039: E/AndroidRuntime(11942): at android.app.ActivityThread.main(ActivityThread.java:4514)
12-28 16:35:04.039: E/AndroidRuntime(11942): at java.lang.reflect.Method.invokeNative(Native Method)
12-28 16:35:04.039: E/AndroidRuntime(11942): at java.lang.reflect.Method.invoke(Method.java:511)
12-28 16:35:04.039: E/AndroidRuntime(11942): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
12-28 16:35:04.039: E/AndroidRuntime(11942): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
12-28 16:35:04.039: E/AndroidRuntime(11942): at dalvik.system.NativeStart.main(Native Method)
请确保您在项目库中添加了jar FtpClient,检查您是否执行了以下操作
我添加了ftpclient.jar。我的应用程序构建没有错误,但在运行时出错。看你的连接,它应该像con.connect(“ftp.194.90.81.149”);我是说ftp。然后您的ip地址我使用FTPClient.BINARY\u文件类型而不是FTP.BINARY\u文件类型。这样做?因为我的项目不理解FTP.BINARY\u文件类型。我不知道为什么会这样!!!