FileNotFoundException  Το θέμα επιλύθηκε

...IDE, compilers, κλπ

Συντονιστής: konnn

FileNotFoundException

Δημοσίευσηαπό john123 » 05 Ιούλ 2012, 14:49

Γεια σας συμφορουμίτες.
Γράφω Java στο Ubuntu με gedit και έχω ένα πρόβλημα με τα αντικείμενα File.

Δημιουργό ένα αντικείμενο File:
File f1 = new File("~/JD/save.dat");

Το οποίο δεν βρίσκει ΜΕ ΤΙΠΟΤΑ. Πετάει FileNotFoundException κάθε φορά και με κάθε παραλλαγή που κανω. Το έχω δοκιμάσει και κατευθείαν στο home, φυσικά με case sensitive γραφή.

Είναι λάθος κώδικα ή πρέπει να κάνω κάτι; χρειάζεται κάποια άδεια στην java να βλέπει αρχεία;
Γνώσεις ⇛ Linux: Λίγο │ Προγραμματισμός: Λίγο Java,Pascal,Python │ Αγγλικά: Καλά
Λειτουργικό :
Windows 7 64bit
Ubuntu 12.04 64 bit

PC1
Προδιαγραφές ⇛ Pentium D 2.8 Ghz │ 2GB Ram │ nVidia 7300 SE │LCD 22"

PC2
Προδιαγραφές ⇛ Intel i5 2500k │ 4GB DDR3 Ram │ Sapphire AMD Radeon 6850 1GB │LCD 22"
john123
babeTUX
babeTUX
 
Δημοσιεύσεις: 12
Εγγραφή: 27 Φεβ 2012, 00:04
Εκτύπωση

Re: FileNotFoundException  Το θέμα επιλύθηκε

Δημοσίευσηαπό medigeek » 05 Ιούλ 2012, 15:11

Ίσως δεν αναγνωρίζει το χαρακτήρα του home "~":
http://www.mindspring.com/~mgrand/java- ... erties.htm
http://docs.oracle.com/javase/1.5.0/doc ... ystem.html

Δες αν δουλεύει με "${user.home}/JD/save.dat"

Ή αυτό: http://www.kodejava.org/examples/99.html
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό Qdata » 05 Ιούλ 2012, 15:47

@john123 όπως σου είπε και ο medigeek ο χαρακτήρας "~" δεν αναγνωρίζετε ως το home σου παρά μόνο από το τερματικό. Δηλαδή μπορείς να αναφερθείς στο home σου με "~" όταν είσαι στο τερματικό αλλά όχι και σε κάποια γλώσσα προγραμματισμού. Εκεί πρέπει να βάλεις την πλήρη τοποθεσία(πχ. /home/john123) ή να χρησιμοποιήσεις κάποιον τρόπο/μεταβλητή/συνάρτηση της γλώσσας προγραμματισμού η οποία θα σου επιστρέφει την πλήρη τοποθεσία του home(πχ με τον παραπάνω τρόπο του medigeek).
Linux User: #530165
Γνώσεις ⇛ Linux: Μέτριο ┃ Προγραμματισμός: Ναι ┃ Αγγλικά: Καλά
Λειτουργικό ⇛ Ubuntu 11.04 32bit σε Intel(R) Atom(TM) CPU N270 @ 1.60GHz
(Notebook) Προδιαγραφές ⇛ 2x Intel(R) Atom(TM) CPU N270 @ 1.60GHz │ 1016MB │ HDA-Intel - HDA Intel -- USB-Audio - USB AUDIO│ 1024x600 pixels
Νέος στο Linux?Οδηγοί - How to - Tutorials
Qdata
powerTUX
powerTUX
 
Δημοσιεύσεις: 1875
Εγγραφή: 18 Ιουν 2010, 19:40
Τοποθεσία: Σέρρες
IRC: dimos
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό clepto » 05 Ιούλ 2012, 15:51

@Qdata είσαι σίγουρος; νομίζω έχω χρησιμοποιήσει σε java το ~ του home
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό Qdata » 05 Ιούλ 2012, 16:03

clepto έγραψε:@Qdata είσαι σίγουρος; νομίζω έχω χρησιμοποιήσει σε java το ~ του home


Πίστευα πως το "~" ήταν απλώς κάτι σαν ειδική μεταβλητή του κελύφους του Linux. Σε python όταν το είχα επιχειρήσει δεν γινόταν. Έπρεπε να χρησιμοποιήσω την πλήρη διαδρομή. Για την Java δεν γνωρίζω, οπότε μπορεί να μην είναι το πρόβλημα στο "~".
Linux User: #530165
Γνώσεις ⇛ Linux: Μέτριο ┃ Προγραμματισμός: Ναι ┃ Αγγλικά: Καλά
Λειτουργικό ⇛ Ubuntu 11.04 32bit σε Intel(R) Atom(TM) CPU N270 @ 1.60GHz
(Notebook) Προδιαγραφές ⇛ 2x Intel(R) Atom(TM) CPU N270 @ 1.60GHz │ 1016MB │ HDA-Intel - HDA Intel -- USB-Audio - USB AUDIO│ 1024x600 pixels
Νέος στο Linux?Οδηγοί - How to - Tutorials
Qdata
powerTUX
powerTUX
 
Δημοσιεύσεις: 1875
Εγγραφή: 18 Ιουν 2010, 19:40
Τοποθεσία: Σέρρες
IRC: dimos
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό john123 » 05 Ιούλ 2012, 16:08

medigeek έγραψε:Ίσως δεν αναγνωρίζει το χαρακτήρα του home "~":
http://www.mindspring.com/~mgrand/java- ... erties.htm
http://docs.oracle.com/javase/1.5.0/doc ... ystem.html

Δες αν δουλεύει με "${user.home}/JD/save.dat"

Ή αυτό: http://www.kodejava.org/examples/99.html


Λύθηκε.
Το τελευταίο λίνκ βοήθησε. μάλλον η getProperty έκανε τη διαφορά.
Χίλια Ευχαριστώ!

Μπορείτε όμως να μου εξηγήσετε αν η getProperty είναι άδεια για να χρησιμοποιηθεί το path. Δεν πολυκαταλαβαίνω. Σε περιβάλλον windows (φιάχνω ένα απλετ που υλοποιεί σχεδόν πλήρως το πακέτο awt) πως λειτουργεί;
Γνώσεις ⇛ Linux: Λίγο │ Προγραμματισμός: Λίγο Java,Pascal,Python │ Αγγλικά: Καλά
Λειτουργικό :
Windows 7 64bit
Ubuntu 12.04 64 bit

PC1
Προδιαγραφές ⇛ Pentium D 2.8 Ghz │ 2GB Ram │ nVidia 7300 SE │LCD 22"

PC2
Προδιαγραφές ⇛ Intel i5 2500k │ 4GB DDR3 Ram │ Sapphire AMD Radeon 6850 1GB │LCD 22"
john123
babeTUX
babeTUX
 
Δημοσιεύσεις: 12
Εγγραφή: 27 Φεβ 2012, 00:04
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό medigeek » 05 Ιούλ 2012, 21:37

john123 έγραψε:Μπορείτε όμως να μου εξηγήσετε αν η getProperty είναι άδεια για να χρησιμοποιηθεί το path. Δεν πολυκαταλαβαίνω. Σε περιβάλλον windows (φιάχνω ένα απλετ που υλοποιεί σχεδόν πλήρως το πακέτο awt) πως λειτουργεί;

Στο 2ο λινκ εξηγεί πως δουλεύει το getProperty, Παραθέτω εδώ την έκδοση 7: http://docs.oracle.com/javase/7/docs/ap ... .String%29
Μια λίστα με τα system properties: http://docs.oracle.com/javase/7/docs/ap ... ties%28%29
Δεν κατάλαβα τι εννοείς με την παραπάνω πρόταση όμως. Αν μπορείς, εξήγησε το πρόβλημα διαφορετικά. :)
Σε περιβάλλον windows, μαλλον to user.home δουλεύει, αλλά σε windows 7 υπάρχει bug:
http://stackoverflow.com/questions/2134 ... g-resolved
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό pmav99 » 09 Ιούλ 2012, 20:07

Off topic:
Qdata έγραψε:Σε python όταν το είχα επιχειρήσει δεν γινόταν. Έπρεπε να χρησιμοποιήσω την πλήρη διαδρομή. Για την Java δεν γνωρίζω, οπότε μπορεί να μην είναι το πρόβλημα στο "~".

Κώδικας: Επιλογή όλων
os.path.expanduser("~")
os.path.expandvars("$HOME")

Δεν ξέρω αν παίζουν σε windows.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: FileNotFoundException

Δημοσίευσηαπό Qdata » 09 Ιούλ 2012, 20:11

pmav99 έγραψε:Off topic:
Qdata έγραψε:Σε python όταν το είχα επιχειρήσει δεν γινόταν. Έπρεπε να χρησιμοποιήσω την πλήρη διαδρομή. Για την Java δεν γνωρίζω, οπότε μπορεί να μην είναι το πρόβλημα στο "~".

Κώδικας: Επιλογή όλων
os.path.expanduser("~")
os.path.expandvars("$HOME")

Δεν ξέρω αν παίζουν σε windows.


Off topic:
Επίσης αυτό που νομίζω λειτουργεί και σε Windows:
Κώδικας: Επιλογή όλων
os.getenv("HOME")
Linux User: #530165
Γνώσεις ⇛ Linux: Μέτριο ┃ Προγραμματισμός: Ναι ┃ Αγγλικά: Καλά
Λειτουργικό ⇛ Ubuntu 11.04 32bit σε Intel(R) Atom(TM) CPU N270 @ 1.60GHz
(Notebook) Προδιαγραφές ⇛ 2x Intel(R) Atom(TM) CPU N270 @ 1.60GHz │ 1016MB │ HDA-Intel - HDA Intel -- USB-Audio - USB AUDIO│ 1024x600 pixels
Νέος στο Linux?Οδηγοί - How to - Tutorials
Qdata
powerTUX
powerTUX
 
Δημοσιεύσεις: 1875
Εγγραφή: 18 Ιουν 2010, 19:40
Τοποθεσία: Σέρρες
IRC: dimos
Εκτύπωση


Επιστροφή στο Εφαρμογές για Ανάπτυξη Λογισμικού