Επιστροφή στο Forum : Need Help..
Καλησπέρα θα ήθελα μια βοήθεια πριν δαγκώσω το πληκτρολόγιο. :p
Kάνω ένα πρόγραμμα σε C++ και θέλω να απομονώσω μια στήλη από integers από ένα αρχείο.
Στο linux που το έκανα χρησιμοποίησα κάτι της μορφής
system("cut -d ',' -f 5 test.csv > values.txt");
δηλαδή κάνει copy αντίστοιχο field από το αρχείο test.csv (comma seperated values) κ τα αποθηκεύει στο values.txt και έτσι έχω ατόφια τα δεδομένα που θέλω.
υπάρχει κάτι αντίστοιχο σε win? χρησιμοποιώντας κάποια εντολή system(); ?
Κάτι που να με βοηθούσε?
Ευχαριστώ!
Αυτό που έκανες δεν ήταν C++, ήταν κλήση ενός προγράμματος που έκανε την δουλειά για σένα. Βρες το ίδιο πρόγραμμα για Windows και εκτέλεσε την ίδια εντολή system, η βρες το source του cut (open source θα ναι) και αντέγραψε τον κώδικά του.
Ναι δε διαφωνώ για το τι ήταν αυτό που εκτέλεσα.
Ωστόσο ούτε που μου πέρασε να βρω τον κώδικα της cut! Πολύ καλή σκέψη. :oneup:
Θα το ψάξω κ θα σου πω.
Για win πάντως δεν μπορώ να βρω κάποια αντίστοιχη command line εντολή..
Ψάχνω να βρω κώδικα της cut αλλά είτε δε ψάχνω σωστά είτε βρίσκω κάτι ατελείωτους κώδικες χωρίς να μπορώ να τους επαναχρησιμοποιήσω. :closed:
Και αυτό που θέλω μοιάζει απλό. Δηλαδή από ένα txt της μορφής
string,string,int,string,int
string,string,int,string,int
string,string,int,string,int
να απομονώσω την 3η και 5η στήλη σε δύο νέα αρχεία.
Ή τέλος πάντων να πάρω την 3η και 5η στήλη σε 2 πίνακες ακεραίων..
Καμιά ιδέα?
Θα μου πείτε, χρονιάρες μέρες και ο καθένας με τον πόνο του... και θα 'χετε κ δίκιο!
:help:
Στο linux γιατι το εκανες μεσα απο C++ με system() και δεν το εκανες απο το prompt? Αφου η cut ειναι εκτελεσιμο αρχειο...
Γιατί δεν είναι κάτι που θέλω να κάνω για προσωπική χρήση.
Ήθελα να είναι μέσα στο πρόγραμμα και να κάνει από εκεί τη δουλειά.
Ένας γενικότερος τρόπος είναι ο ακόλουθος
#include <string>
#include <iostream>
int main(int argc, char** argv)
{
const std::string delim(",");
std::string line;
while (getline(std::cin, line)) {
std::cout << line.substr(line.find_last_of(",")+1) << std::endl;
}
return 0;
}
και η χρήση αυτού prog <test.csv >values.txt
Σας ευχαριστώ όλους για το ενδιαφέρον
..Άντε και καλή χρονια! =)
@ ADSLgr.com All rights reserved.