THMMY.gr

Ηλεκτρονικοί Υπολογιστές και Τεχνικά Θέματα => C / C++ / C# => Topic started by: megapixel on December 14, 2011, 02:05:27 am



Title: [C++] Πως μπορω να διαβασω κελια excel?
Post by: megapixel on December 14, 2011, 02:05:27 am
Στη C++ πως γινεται

να γραψω κωδικα που να διαβαζει αριθμους απο κελια αρχειου excel (xls ή xlsx) και να τα τοποθετει σε μεταβλητες?


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: Issle on December 14, 2011, 14:07:45 pm
Hmm είναι ανάγκη να είναι xls ? Γιατί δεν τα κάνεις save σε άλλη μορφή ( CSV, αν βγαίνει και σε xml ακόμα καλύτερα ... ). Anyway try this ( δεν το έχω δοκιμάσει ) http://sourceforge.net/projects/xlslib/files/ Αλλιώς δες το implementation του openoffice.

Edit: http://www.libxl.com/ Υπάρχει και αυτό αλλά δεν είναι free.


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: SolidSNK on December 14, 2011, 16:12:24 pm
Στη C++ πως γινεται

να γραψω κωδικα που να διαβαζει αριθμους απο κελια αρχειου excel (xls ή xlsx) και να τα τοποθετει σε μεταβλητες?
Διάβασε το format (http://en.wikipedia.org/wiki/Microsoft_Excel#File_formats) και φτιάξε ένα parser.


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: megapixel on December 14, 2011, 22:15:53 pm
Issle

-το xlslib εχει καποια μικροπροβληματα...?

-το immplementation του office τι ειναι?

-το libxl θελει 200 ευρω...




SolidSNK

δεν ξερω καν τι ειναι το parser....


Μεχρι στιγμης εχω βρει τα εξης αλλα δε ξερω πως να τα χρησιμοποιησω..:
http://www.codeproject.com/KB/wtl/WTLExcel.aspx (http://www.codeproject.com/KB/wtl/WTLExcel.aspx)
http://www.codeproject.com/KB/office/excel-ado-c.aspx (http://www.codeproject.com/KB/office/excel-ado-c.aspx)
http://www.codeproject.com/KB/office/BasicExcel.aspx (http://www.codeproject.com/KB/office/BasicExcel.aspx)




Αλλα ειναι τοσο πολυπλοκο? με μερικες απλες γραμμες που θα περιλαμβανουν fopen κλπ δε μπορει να γινει?

ειμαι ενεργειακος...


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: SolidSNK on December 15, 2011, 00:13:36 am
H C++ από μόνη της δε διαβάζει κελιά excel. Δεν υπάρχει κάτι τέτοιο στη γλώσσα (αναφερόμενος στη C++ Standard Library). Θα μπορούσε, αλλά δε συνηθίζεται να προσφέρονται τόσο εξειδικευμένες λειτουργίες σε standard libraries. Λέγοντας

Quote
Αλλα ειναι τοσο πολυπλοκο? με μερικες απλες γραμμες που θα περιλαμβανουν fopen κλπ δε μπορει να γινει?

ουσιαστικά έχεις τη λύση. Απλά πρέπει να ξέρεις ΤΙ διαβάζεις, δηλαδή τι αντιπροσωπεύει η αληλλουχία bytes που θα διαβάζεις από το αρχείο. Anyway, για να μην παιδεύεσαι http://libxls.sourceforge.net/.


Title: deleted
Post by: BOBoMASTORAS on December 15, 2011, 01:32:05 am
deleted


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: megapixel on December 15, 2011, 01:56:36 am
H C++ από μόνη της δε διαβάζει κελιά excel. Δεν υπάρχει κάτι τέτοιο στη γλώσσα (αναφερόμενος στη C++ Standard Library). Θα μπορούσε, αλλά δε συνηθίζεται να προσφέρονται τόσο εξειδικευμένες λειτουργίες σε standard libraries. Λέγοντας

Quote
Αλλα ειναι τοσο πολυπλοκο? με μερικες απλες γραμμες που θα περιλαμβανουν fopen κλπ δε μπορει να γινει?

ουσιαστικά έχεις τη λύση. Απλά πρέπει να ξέρεις ΤΙ διαβάζεις, δηλαδή τι αντιπροσωπεύει η αληλλουχία bytes που θα διαβάζεις από το αρχείο. Anyway, για να μην παιδεύεσαι http://libxls.sourceforge.net/.

πολυ καλη βοηθεια αν και δε τη δοκιμασα ακομη, αλλα πρεπει και να μπορει να γραψει σε κελια ή εστω σε csv.

Αυτο ειναι προυποθεση, γιατι αν επιλεξω καποιο τροπο πχ excel θα πρεπει η αναγνωση γραφη να γινοντια μεσω excel αλλιως δεν εχει νοημα να χρησιμοποιησω το δυσκολο τροπο.
Θα παω κατευθειαν σε csv.
αυτο που θελω να κανω πρεπει να ειναι user friendly και απο τη στιγμη που ο αλλος θα πρεπει να κανει μια φορα μετατροπη csv δεν εχει νοημα η διευκολυνση μεσω excel.


Title: Re: [C++] Πως μπορω να διαβασω κελια excel?
Post by: megapixel on December 15, 2011, 02:27:53 am
κατι σε στυλ libxl χωρις ολα τα περιττα χαρακτηριστικα,
 απλα να διαβαζει και να γραφει νουμερα
χωρις  να ειναι τοσο ακριβο
υπαρχει?