kaliakman Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Καλησπέρα, θέλω να φτιάξω ένα πρόγραμμα που μεταφράζει Windows 1253 σε UTF 8 είτε UTF 16. Ο τελικός σκοπός είναι να φτιάξω ένα προγραμματάκι που θα αλλάζει αυτόματα την κωδικοποίηση σε υπότιτλους για να παίζουν σε τηλεόραση (UTF 16 LE). Έχω φτιάξει μετατροπέα από UTF 8 σε 16 και αντίστροφα και δουλεύει μια χαρά για αγγλικά μιας και είναι σε UTF 8. Σε ελληνικά υπάρχει το θέμα γιατί η κωδικοποίηση ειναι σε Windows 1253 και δεν βρίσκω τρόπο να το μετατρέψω. Υπάρχει κάποια μετατροπή ή πρέπει να κάνω την "βρωμοδουλειά" να αντιστοιχίσω σύμφωνα με αυτό; Site: Link Σίγουρα θα υπάρχει εύκολη μέθοδος σε κάποιες γλώσσες αλλά δουλεύω σε C++. Οποιοδήποτε hint καλοδεχούμενο!
iceblade Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Καλησπέρα, θέλω να φτιάξω ένα πρόγραμμα που μεταφράζει Windows 1253 σε UTF 8 είτε UTF 16. Ο τελικός σκοπός είναι να φτιάξω ένα προγραμματάκι που θα αλλάζει αυτόματα την κωδικοποίηση σε υπότιτλους για να παίζουν σε τηλεόραση (UTF 16 LE). Έχω φτιάξει μετατροπέα από UTF 8 σε 16 και αντίστροφα και δουλεύει μια χαρά για αγγλικά μιας και είναι σε UTF 8. Σε ελληνικά υπάρχει το θέμα γιατί η κωδικοποίηση ειναι σε Windows 1253 και δεν βρίσκω τρόπο να το μετατρέψω. Υπάρχει κάποια μετατροπή ή πρέπει να κάνω την "βρωμοδουλειά" να αντιστοιχίσω σύμφωνα με αυτό; Site: Link Σίγουρα θα υπάρχει εύκολη μέθοδος σε κάποιες γλώσσες αλλά δουλεύω σε C++. Οποιοδήποτε hint καλοδεχούμενο! Σε Python 3: import sys # use 'utf-8' for UTF-8 and 'utf-16-le' for UTF-16 LE with open(sys.argv[1], 'r', encoding='cp1253') as fin, open(sys.argv[2], 'w', encoding='utf-16-le') as fout: fout.write(fin.read()) και python program.py <input-file.txt> <output-file.txt> Γιατί να κάνεις κάτι τέτοιο σε C++, το καρφί στον τοίχο για να κρεμάσεις το κάδρο δεν το καρφώνεις με βαριοπούλα 1
defacer Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Είχα και γω ακριβώς το ίδιο πρόβλημα κάποτε, αλλά όσο κι αν σε τρώει δε χρειάζεται πρόγραμμα για να το κάνεις αυτό. Μη σου πώ μέχρι και με Notepad μπορείς να το κάνεις. Σίγουρα με notepad++ ή sublime γίνεται manually μεν αλλά πανεύκολα (έτσι το κάνω και γω, αφού anyway θέλω να βγάλω και τα διαφημιστικά παράλληλα).
iceblade Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Είχα και γω ακριβώς το ίδιο πρόβλημα κάποτε, αλλά όσο κι αν σε τρώει δε χρειάζεται πρόγραμμα για να το κάνεις αυτό. Μη σου πώ μέχρι και με Notepad μπορείς να το κάνεις. Σίγουρα με notepad++ ή sublime γίνεται manually μεν αλλά πανεύκολα (έτσι το κάνω και γω, αφού anyway θέλω να βγάλω και τα διαφημιστικά παράλληλα). Στην πράξη τις περισσότερες φορές και γω Notepad++.
kaliakman Δημοσ. 20 Ιουλίου 2016 Μέλος Δημοσ. 20 Ιουλίου 2016 Σε Python 3: import sys # use 'utf-8' for UTF-8 and 'utf-16-le' for UTF-16 LE with open(sys.argv[1], 'r', encoding='cp1253') as fin, open(sys.argv[2], 'w', encoding='utf-16-le') as fout: fout.write(fin.read()) και python program.py <input-file.txt> <output-file.txt> Γιατί να κάνεις κάτι τέτοιο σε C++, το καρφί στον τοίχο για να κρεμάσεις το κάδρο δεν το καρφώνεις με βαριοπούλα Αρχικά ευχαριστώ. Θέλω σε C/C++(Δεν έχει σημασία στο συγκεκριμένο) γιατί είχα φτιάξει τον μετατροπέα από πιο παλία και έλεγα να τον χρησιμοποιήσω για να κάνω κάτι πιο ολοκληρωμένο. Είχα και γω ακριβώς το ίδιο πρόβλημα κάποτε, αλλά όσο κι αν σε τρώει δε χρειάζεται πρόγραμμα για να το κάνεις αυτό. Μη σου πώ μέχρι και με Notepad μπορείς να το κάνεις. Σίγουρα με notepad++ ή sublime γίνεται manually μεν αλλά πανεύκολα (έτσι το κάνω και γω, αφού anyway θέλω να βγάλω και τα διαφημιστικά παράλληλα). Και με το notepad γίνεται αρκεί να κάνεις Save As με κωδικοποίηση Unicode(aka για τον υπόλοιπο κόσμο UTF 16 LE). Το θέμα είναι ότι σκεφτόμου να φτιάξω ένα προγραμματάκι που θα κάνει την αλλάγη κωδικοποίησης και ονόματος "αυτόματα" γιατί ξέρω πολύ κόσμο φιλικό και γενικότερα που επειδή δεν ξέρει να κάνει 5 απλά βήματα δεν βλέπει ταινία στην τηλεόραση του σαλονιού και κάθεται στην κλάσσεις κατώτερη του PC-Laptop.
defacer Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Το θέμα είναι ότι σκεφτόμου να φτιάξω ένα προγραμματάκι που θα κάνει την αλλάγη κωδικοποίησης και ονόματος "αυτόματα" γιατί ξέρω πολύ κόσμο φιλικό και γενικότερα που επειδή δεν ξέρει να κάνει 5 απλά βήματα δεν βλέπει ταινία στην τηλεόραση του σαλονιού και κάθεται στην κλάσσεις κατώτερη του PC-Laptop. Well τότε θα πρέπει να είσαι πάρα πάρα πολύ προσεκτικός για να μην έχει καθόλου library dependencies αυτό που θα κάνεις (ακόμα και τη C runtime library statically link κλπ). Επίσης, δεν πιστεύω να προορίζεις command line πρόγραμμα για κόσμου που δεν ξέρει να κάνει 5 απλά βήματα; 2
kaliakman Δημοσ. 20 Ιουλίου 2016 Μέλος Δημοσ. 20 Ιουλίου 2016 Well τότε θα πρέπει να είσαι πάρα πάρα πολύ προσεκτικός για να μην έχει καθόλου library dependencies αυτό που θα κάνεις (ακόμα και τη C runtime library statically link κλπ). Επίσης, δεν πιστεύω να προορίζεις command line πρόγραμμα για κόσμου που δεν ξέρει να κάνει 5 απλά βήματα; Ο σκοπός είναι να φτιαχτεί αρχικά επιλογή στο context menu των windows και να βγάζει το αρχείο σε ένα default όνομα πχ output.srt και ίσως αργότερα να ανοίγει prompt που πρέπει να διαλέξει ο χρήστης την ταινία/σειρά/whatever και τους υπότιτλους και να γίνεται και η αλλαγή ονόματος. Όλα αυτά είναι υποθετικά και στο μυαλό μου μιας και ακόμα δεν έχω τις απαραίτητες γνώσεις αλλά προτίθεμαι να ψάξω. 1
pmav99 Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Άμα θες να το χρησιμοποιήσουν και τρίτοι, κάνε μία απλή web εφαρμογή. Μία φόρμα, ανεβάζει το srt, κατεβάζει το νέο srt και τέλος. Για να μην κουράζεις τους φίλους σου δε, μπορείς και να δέχεσαι στη φόρμα και zip και να επιστρέψεις zip Edit Και όπως είναι φυσικά προφανές υπάρχουν ήδη αντίστοιχα sites https://www.google.gr/search?q=change+file+encoding+online&oq=change+encoding+online 2
παπι Δημοσ. 20 Ιουλίου 2016 Δημοσ. 20 Ιουλίου 2016 Ο σκοπός είναι να φτιαχτεί αρχικά επιλογή στο context menu των windows και να βγάζει το αρχείο σε ένα default όνομα πχ output.srt και ίσως αργότερα να ανοίγει prompt που πρέπει να διαλέξει ο χρήστης την ταινία/σειρά/whatever και τους υπότιτλους και να γίνεται και η αλλαγή ονόματος. Όλα αυτά είναι υποθετικά και στο μυαλό μου μιας και ακόμα δεν έχω τις απαραίτητες γνώσεις αλλά προτίθεμαι να ψάξω. Εφοσον εισαι σε wins https://msdn.microsoft.com/en-us/library/windows/desktop/dd319072(v=vs.85).aspx δες και την reverse εκδοχη.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα