sylvester73 Δημοσ. 29 Απριλίου 2013 Δημοσ. 29 Απριλίου 2013 Καλησπερα Ειμαι ασχετος απο προγραμματισμο, αλλα εχω μια ιδεα και θα ηθελα τι βοηθεια σας ετσι ωστε να υλοποιηθεί Βασικα ο τιτλος μπορει να μην ταιριαζει αλλα δεν μου ηρθε κατι αλλο. Εχω σκεφτει ενα προγραμμα το οποιο θα το ανοιγουμε και θα κανει αναζητηση μεσα σε εναν φακελο για ολα τα αρχεια .php Οταν βρισκει τα αρχεια να προσθετει στην αρχη τους μια γραμμη που εχω επιλεξει εγω πχ μια γραμμη με κωδικα php. Την αναζήτηση να την κάνει αυτόματα για τα αρχεία .php και να μην χρειάζεται να τα ανοίγω ένα ένα και να βαζω τον κωδικα που θελω. Φυσικα να ψαχνει και σε υποφακελος δηλαδη ο κεντρικος φακελος πχ. λεγεται site και μεσα πχ. περιεχει τους φακελος site2,test,admin κ.τ.λ. οπου αυτη οι φάκελοι περιέχουν διαφορα αρχεία και υποφακελους μεσα. Ευχαριστωω
WoodSell3r Δημοσ. 29 Απριλίου 2013 Δημοσ. 29 Απριλίου 2013 Σε τελειως γενικες γραμμες, θα πρεπει να δινεις σαν εισοδο τον καταλογο στον οποιο θελεις να γινουν οι αλλαγες και την γραμμη που θελεις να προσθεσεις. Επειτα, με μια απλη συνθηκη θα ελεγχεις για την καταληξη των αρχειων του καταλογου και αν αυτα ειναι .php τοτε θα τα ανοιγεις και θα προσθετεις την γραμμη.Ολα αυτα μεχρι να σαρωσεις ολα τα αρχεια και φακελους. Δεν ειναι κατι δυσκολο αν πιανουν τα χερια σου απο κωδικα και μπορεις να το κανεις ακομα πιο απλο χωρις καν γραφικο περιβαλλον, μονο inputs απο cmd/terminal.Απανταω γενικα στο τι πρεπει να κανεις γιατι ρωτας γενικα πως να το κανεις και δεν αναφερεσαι σε καποια συγκεκριμενη γλωσσα.
sylvester73 Δημοσ. 30 Απριλίου 2013 Μέλος Δημοσ. 30 Απριλίου 2013 Ευχαριστω για την απαντηση Αλλα γενικα δεν πιανω απο κωδικα, και δεν μπορω να μαθω, δηλαδη και στο σχολειο μπερδευεται το μυαλό μου κ.τ.λ. και δεν μπορω. Μηπως μπορει καποιος να με βοηθησει να το υλοποιήσω αυτο που σκεφτομαι; Ευχαριστωωωωωωωω
albNik Δημοσ. 30 Απριλίου 2013 Δημοσ. 30 Απριλίου 2013 Με αυτόν τον κώδικα σε C# προσθέτεις τη γραμμή line σε όλα τα .php αρχεία που είναι μεσα στον κατάλογο folder. Δεν έχει έλεγχο λαθών, encoding κλπ void ProcessFiles(string folder, string line) { string[] files = Directory.GetFiles(folder, "*.php", SearchOption.AllDirectories); foreach(string file in files) { string contents = ""; using(StreamReader sr = new StreamReader(file)) contents = sr.ReadToEnd(); using(StreamWriter sw = new StreamWriter(file, false)) { sw.WriteLine(line); sw.Write(contents); } } }
pmav99 Δημοσ. 30 Απριλίου 2013 Δημοσ. 30 Απριλίου 2013 Υπάρχει τέτοιο πρόγραμμα και ονομάζεται sed. http://en.wikipedia.org/wiki/Sed
sylvester73 Δημοσ. 30 Απριλίου 2013 Μέλος Δημοσ. 30 Απριλίου 2013 Σας ευχαριστω Το προγραμμα αυτο ψαχνει αυτοματα σε φακελους; Εμενα το προβλημα μου ειναι οτι θελω να ψαχνει και σε υποφακελους
pmav99 Δημοσ. 30 Απριλίου 2013 Δημοσ. 30 Απριλίου 2013 Τα αρχεία τα βρίσκεις με τη find. Πχ find ./ -type f -exec sed -i ‘s/string1/string2/’ {} \;Πιθανά να βρεις χρήσιμο αυτό και αυτό
albNik Δημοσ. 30 Απριλίου 2013 Δημοσ. 30 Απριλίου 2013 Directory.GetFiles(folder, "*.php", SearchOption.AllDirectories); Αυτό ψάχνει και σε υποφακέλους
Timonkaipumpa Δημοσ. 30 Απριλίου 2013 Δημοσ. 30 Απριλίου 2013 Εάν δεν θες C# (για λόγους φορητότητας) δες το: Boost::filesystem::recursive_directory_iterator Που είναι στο boost/filesystem.hpp και τα: std::ofstream std::ifstream που είναι στο <fstream> Με το ofstream μπορείς να γράψεις σε ένα αρχείο ως: using std::ofstream; using std::endl; ofstream theFile; theFile.open("theFile.extension"); theFile << "Write a line" << endl; Και να διαβάσεις με τον αντίστοιχο τρόπο, χρησιμοποιώντας τον >> operator.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα