2016-12-17 3 views
0

Ich möchte eine Textdatei hochladen, ich verwende org.apache.commons.net.ftp.FTPclient. Der Code schlägt jedes Mal fehl.Fehler beim Hochladen der Datei mit Apache FTPclient unter Android

FTPClient client = new FTPClient(); 
FileInputStream fis = null; 

try { 
    client.connect("192.168.43.164",21); 
    client.login("android", "android"); 
    client.setFileType(FTP.BINARY_FILE_TYPE); 
    client.setFileTransferMode(FTP.BINARY_FILE_TYPE); 
    String filename = "/sdcard/m.txt"; 
    fis = new FileInputStream(filename); 
    client.setFileType(FTP.BINARY_FILE_TYPE); 
    client.storeFile("/web/m.txt", fis); 
    fis.close(); 
    client.logout(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

Ich bin nach diesem Tutorial: FTP File Upload From Sdcard to server

Logcat Ausgang,

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.vaibhav.myapplication/com.example.vaibhav.myapplication.MainActivity}: android.os.NetworkOnMainThreadException 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
     at android.app.ActivityThread.access$800(ActivityThread.java:151) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:135) 
     at android.app.ActivityThread.main(ActivityThread.java:5254) 
     at java.lang.reflect.Method.invoke(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:372) 
+0

Was der Fehler? –

+0

Anwendung kann abgestürzt sein, –

+0

Zeigt die Logcat-Ausgabe an. –

Antwort

0

FtpClient hochladen .. Datei für mich arbeiten

import android.os.AsyncTask;  
import android.support.v7.app.AppCompatActivity;  
import android.os.Bundle;  
import org.apache.commons.net.ftp.*;  
import java.io.FileInputStream;  
import java.io.IOException;  
public class MainActivity extends AppCompatActivity {  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
     super.onCreate(savedInstanceState);  
     setContentView(R.layout.activity_main);  
     new uploadTask().execute();  
     }  
    class uploadTask extends AsyncTask<String, Void, String> {  
     @Override  
     protected String doInBackground(String... params) {  
      FTPClient client = new FTPClient();  
      FileInputStream fis = null;  
      try {  
       client.connect("192.168.43.164", 21);  
       client.login("android", "android");  
       client.setFileType(FTP.BINARY_FILE_TYPE);  
       client.enterLocalPassiveMode();  
       client.sendCommand("OPTS UTF8 ON");  
       String filename = "/sdcard/m.txt";  
       fis = new FileInputStream(filename);  
       client.storeFile("https://stackoverflow.com/a/m.txt", fis);  
       fis.close();  
       client.logout();  
      } catch (IOException e) {  
       e.printStackTrace(); 
      }  
       return null;  
      }  
     }  
    }  
+0

Großartig .. Viel Glück :) –

Verwandte Themen