[Java]Απομακρυσμένη Πρόσβαση σε αρχεία
[Java]Απομακρυσμένη Πρόσβαση σε αρχεία
Ε;Καλά το είπα;Βασικά η απορία είναι διπλή.
α)Πως μπορώ να δω τα περιεχόμενα του καταλόγου http://dias.aueb.gr/ ;
β)Πως μπορώ να ανοίξω το αρχείο http://dias.aueb.gr/dias.jpg ;
To α δηλαδή είναι σαν το list() της class java.io.File.
Και το β σαν το new File("http://dias.aueb.gr/dias.jpg"),κτλ.
α)Πως μπορώ να δω τα περιεχόμενα του καταλόγου http://dias.aueb.gr/ ;
β)Πως μπορώ να ανοίξω το αρχείο http://dias.aueb.gr/dias.jpg ;
To α δηλαδή είναι σαν το list() της class java.io.File.
Και το β σαν το new File("http://dias.aueb.gr/dias.jpg"),κτλ.
Re: [Java]Απομακρυσμένη Πρόσβαση σε αρχεία
a) Άνοιξε μια tcp socket connection στην διεύθυνση dias.aueb.gr και στείλε ένα σωστό GET request για τη σελίδα που θες να δείς. Θα σου επιστραφεί μια html σελίδα και αν έχει ενεργοποιημένο το directory listing η σελίδα που θες, θα δείς τα περιεχόμενα. Τώρα αν θές όντως να δείς του http://dias.aueb.gr/, τότε δε νομίζω να μπορέσεις γιατί ο server θα σουBabedacus wrote:Ε;Καλά το είπα;Βασικά η απορία είναι διπλή.
α)Πως μπορώ να δω τα περιεχόμενα του καταλόγου http://dias.aueb.gr/ ;
β)Πως μπορώ να ανοίξω το αρχείο http://dias.aueb.gr/dias.jpg ;
To α δηλαδή είναι σαν το list() της class java.io.File.
Και το β σαν το new File("http://dias.aueb.gr/dias.jpg"),κτλ.
στείλει την index που έχει τοποθετηθεί εκεί.
b) Τι εννοείς "ανοίξω"; Αν θες να βάλεις την εικόνα http://dias.aueb.gr/dias.jpg σε ένα label μέσα σε ένα frame, τότε μπορείς άνετα να το κάνεις, το jlabel μπορεί να πάρει ως εικόνα κάτι από url, αφού το imageIcon δέχεται url ως όρισμα στον κατασκευαστή. Άρα μπορείς να πάρεις την εικόνα από το http://dias.aueb.gr/dias.jpg και να την κάνεις ό,τι θές.
I am a nobody, and nobody is perfect; therefore I am perfect.
Έχω ένα πρόγραμμα σε Java,ωραία;Μέχρι χτες αυτό που έκανε είναι να παίρνει σαν είσοδο ένα κατάλογο στο τοπικό σύστημα αρχείων και να γράφει στην προκαθορισμένη έξοδο όλα τα περιεχόμενα του.Καλά μέχρι εδώ;Αυτό που θέλω να κάνει τώρα είναι να παίρνει σαν είσοδο ένα URL και να μου δείχνει τα περιεχόμενα του καταλόγου του απομακρυσμένου συστήματος (π.χ. του καταλόγου / στο dias.aueb.gr).ciao wrote:Τι ακριβώς θέλεις να κάνεις???
Επίσης αυτό το πρόγραμμα ανοίγει μπορεί να δείξει και μια εικόνα απ'το τοπικο σύστημα αρχείων.Αυτό που θέλω να κάνει τώρα είναι να ανοίγει μια εικόνα από άλλο υπολιστή (π.χ την http://dias.aueb.gr/dias.jpg).
Re: [Java]Απομακρυσμένη Πρόσβαση σε αρχεία
Δεν υπάρχουν έτοιμες βιβλιοθήκες που να το κάνουν αυτόματα αυτό το πράμα,και να μου δίνουν String[];Argi wrote:a) Άνοιξε μια tcp socket connection στην διεύθυνση dias.aueb.gr και στείλε ένα σωστό GET request για τη σελίδα που θες να δείς. Θα σου επιστραφεί μια html σελίδα και αν έχει ενεργοποιημένο το directory listing η σελίδα που θες, θα δείς τα περιεχόμενα. Τώρα αν θές όντως να δείς του http://dias.aueb.gr/, τότε δε νομίζω να μπορέσεις γιατί ο server θα σου
στείλει την index που έχει τοποθετηθεί εκεί.
Όσον αφορά το β,το είχα ήδη λύσει,αλλά δεν το είχα πάρει χαμπάρι.

Code: Select all
try {
// Create a URL for the desired page
URL url = new URL("http://dias.aueb.gr/~p302xxxx/");
// Read all the text returned by the server
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;
while ((str = in.readLine()) != null) {
// str is one line of text; readLine() strips the newline character(s)
}
in.close();
} catch (MalformedURLException e) {
} catch (IOException e) {
}
Μόνο που αυτό που θα επιστραφεί θα είναι μια html σελίδα η οποία θα έχει τα περιεχόμενα του καταλόγου σε html μορφή αν είναι ενεργοποιημένο το directory listing όπως είπα πιο πριν. Μετά πρέπει να κάνεις parse τα αποτελέσματα για να βρείς τα ονόματα των αρχείων.
Γενικά δεν υπάρχει κάτι αντίστοιχο της list() για urls σε καμμία γλώσσα απ'όσο ξέρω.
I am a nobody, and nobody is perfect; therefore I am perfect.