Java ftp

Java ftp
2008-06-29T15:46:55+02:00
2008-10-02T09:39:30+02:00
2022-11-11T02:40:34+01:00
softr
Ezt próbáltam lekoppintani. Egyszerű ctrlc ctrlv, de nem kapcsolódik az FTP szerverhez. Levettem a nagyszerű kivételkezelést, akkor ezt írta:

Exception in thread "main" java.io.IOException: SimpleFTP received an unknown response when connecting to the FTP server: 220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------



Tűzfalon mit állítsak? (SP2 beépített tűzfal)




import org.jibble.simpleftp.*; import java.io.*; public class ftp { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { SimpleFTP ftp = new SimpleFTP(); ftp.connect("ftp.freeweb.hu",21, "******", "***********"); // Quit from the FTP server. ftp.disconnect(); }
Mutasd a teljes hozzászólást!
Hello

Szerintem FTP-zéshez használd inkább a commons-net 1.4.1-et...

Én is ezt használom és a kapcsolattal együtt a fájlkezelés is igen könnyedén megy.
Mutasd a teljes hozzászólást!

  • 1. megoldas: rabirod a szervert, hogy csak egy 220-as valaszt kuldjon csatlakozaskor.
    2. megoldas: atirod a SimpleFTP kodjat, ha elso uzenetkent a szervertol nem 220-ast kapsz, figyelmen kivul hagyod, es nem dobsz kivetelt! forras
    Mutasd a teljes hozzászólást!
  • Igen, ezt bütykölöm. Ha beolvasom az összes sort:


    220-Te vagy a 11 a 100 felhasználó közül, aki beléphet. 220-A Helyi Ido 16:28. szerver port: 21. 220-Ez egy privát rendszer - nincs anonymous bejelentkezés 220 60 másodperc inaktivitás után a kapcsolat megszakad.
    Mutasd a teljes hozzászólást!
  • Vagy esetleg olyan érdekelne, hogy van -e olyan ingyenes tárhely (uw, fw,.... ), ami nem izél ilyennel? Azt hiszem egy éve tiptopp működött ez a kód. egy ideje szenvedek vele, de semmi eredmény :S
    Mutasd a teljes hozzászólást!
  • Így már jó, de ha filet, akarok felölteni, akkor megint izél
    public synchronized void connect(String host, int port, String user, String pass) throws IOException { if (socket != null) { throw new IOException("SimpleFTP is already connected. Disconnect first."); } socket = new Socket(host, port); reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); sendLine("USER " + user); sendLine("PASS " + pass); // Now logged in. }
    Mutasd a teljes hozzászólást!
  • Ha nem sikerül megoldani, van egy program amit még régen írtam (akarom mondani crtl+c, ctrl+v -volt :) aztán kicsit átírtam.)
    akármilyen servherhez próbálhatsz vele csatlakozni valamennyi porton, és folyamatosan küldhetsz és fogadhatsz üzenetet.
    Ha érdekel, akkor írj.
    Mutasd a teljes hozzászólást!
  • Hello

    Szerintem FTP-zéshez használd inkább a commons-net 1.4.1-et...

    Én is ezt használom és a kapcsolattal együtt a fájlkezelés is igen könnyedén megy.
    Mutasd a teljes hozzászólást!
  • Egyetértek . Én is commons-net 1.4.1-et használok és tök jól működik. Kapcsolódás is, fájlkezelés is.
    Mutasd a teljes hozzászólást!
  • De most találtam egy jobbat mint a commons,

    file:///D:/Java%20Libraries/ftp%20lib/

    próbáld ki!
    Mutasd a teljes hozzászólást!
  • Helló!
    Én úgy valósítom meg az ftp (és egyben http) elérését egy fájlnak hogy:
    Url objektumból openConnection meghívása és a referencia átadása URLConnection-nak.
    Ha feltölteni akarsz URLConnection.getInputStream, ha letölteni URLConnection.getOutputStream.
    Ez a két objektum alkalmazható byte-onkénti feltöltésre.
    Itt egy példaprogram ami a karakterkódolást is megvalósítja:
    (A hibákat csak eldobáltam)
    Importok:

    import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import java.nio.charset.Charset;
    Maga a kód:
    public class Ftpzes { private static Charset karakterkodolas; public static void main(String args[]) throws MalformedURLException, IOException { //A Charset absztrakt, a példányosításkor eldönhetjük //melyik karakterkódolás megvalósítást választjuk //Pl. ISO-8859-2 stb., // karakterkodolas = new US_ASCII(); // karakterkodolas = new ISO_8859_2(); karakterkodolas = Charset.defaultCharset(); URL url = new URL("ftp://localhost/fajlnev.txt"); URLConnection urlc = url.openConnection(); Ftpzes ftpzes = new Ftpzes(); //itt történik a lényegi dolog, a feladat végrehajtása ftpzes.iras(urlc); } public void iras(URLConnection urlc) throws IOException { OutputStream ops = urlc.getOutputStream(); OutputStreamWriter opsw = new OutputStreamWriter(ops, karakterkodolas); opsw.write("Blablablabla"); opsw.flush(); } }
    Mutasd a teljes hozzászólást!
  • Pontosan mit is nézzek meg ?
    Mutasd a teljes hozzászólást!
  • Használd az EDTFTPj-t. Ott megadhatod, hogy melyik értékeket fogadja el, illetve melyikeket akarod kezelni.
    Mutasd a teljes hozzászólást!
  • Érdemes megnézni ezt is:
    Javaworld Ftp
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd