Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Πρόβλημα με encoding ελληνικού κειμένου από behind code

Îåêßíçóå áðü ôï ìÝëïò ioagia. Τελευταία δημοσίευση από το μέλος Dimitris Papadimitriou στις 02-04-2009, 22:24. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  01-04-2009, 17:00 49777

    Πρόβλημα με encoding ελληνικού κειμένου από behind code

    Καλησπερα στους dotNETZoners,

    αντιμετωπιζω το εξης προβλημα σε ενα site που εργαζομαι:
    Το περιεχομενο του site ειναι στα ελληνικα.

    Το charset του περιεχομενου καθε .aspx αρχειου του site οριζεται σε utf-8 με τη χρηση του παρακατω κωδικα στο head του .aspx :
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    To encoding σε ελληνικα οριζεται σε el-GR με τη χρηση του παρακατω κωδικα στο web.config
    <globalization culture="el-GR" requestEncoding="utf-8" responseEncoding="utf-8" />

    To ελληνικο περιεχομενο που γραφεται μεσα στο .aspx αρχειο, αποτυπωνεται κανονικα στον browser. To ελληνικο περιεχομενο ομως που προερχεται απο το behind code του ιδιου .aspx αρχειου αποτυπωνεται με δυσαναγνωστους χαρακτηρες στον browser.

    Το site ειναι ανεβασμενο σε αμερικανικο server (δεν ξερω αν αυτο εχει καποια σημασια)
    Ευχαριστω πολυ για την βοηθεια....

  •  02-04-2009, 11:34 49792 σε απάντηση της 49777

    Απ: Πρόβλημα με encoding ελληνικού κειμένου από behind code

    Καλημέρα,

     

    Υποθέτω ότι στον development server δουλεύει σωστά.

    Θα πρότεινα να ελέγξεις σε ποια κωδικοσελίδα είναι αποθηκευμένα τα αρχεία του code behind. Υποψιάζομαι ότι είναι αποθηκευμένα σαν ANSI.

     

    Για να το ελέγξεις, άνοιξε ένα αρχείο με το κλασικό notepad και πάτα File->Save As και έλεγξε στην επιλογή Encoding. Αν είναι ANSI θα πρέπει να τα μετατρέψεις σε utf8.

     

    Αν πρόκειται για πολλά αρχεία, καλό είναι να βρεις ένα μετατροπέα. Στο SourceForge υπάρχει ο cp-converter. Δεν είναι τίποτα εκπληκτικό, αλλά θα κάνεις την δουλειά σου.

  •  02-04-2009, 13:07 49796 σε απάντηση της 49792

    Απ: Πρόβλημα με encoding ελληνικού κειμένου από behind code

    Gkaz, ευχαριστω πολυ για την λυση σου.
    Με την αλλαγη του encoding με βαση τις οδηγιες σου ολα δουλευουν σωστα.
    (εχω μια μικρη απορία ομως, στο cp-converter στο panel της εφαρμογης που καθοριζεις το source encoding, δεν φαινεται να υπαρχει η επιλογη ANSI ετσι ωστε να κανω μαζικη αλλαγη αρχειων.)

    Δεν ειναι απαραιτητη παντως αυτη η διαδικασια μεσω Notepad για να αλλαξεις το encode, μπορεις να το κανεις κ μεσω VisualStudio ως: File->Advanced Save Options->Encoding

  •  02-04-2009, 17:10 49801 σε απάντηση της 49796

    Απ: Πρόβλημα με encoding ελληνικού κειμένου από behind code

    Σωστή η παρατήρηση σου για το visual studio. Με το notepad δεν κάνεις δουλειά. Το ανέφερα διότι έχει ένα απλό και γρήγορο τρόπο να εντοπίσεις το encoding  του αρχείου.

     

    Το ANSI είναι single byte character. Αν δεις τα ελληνικά encodings στο cp-converter όλα είναι single byte character. Μιας και δουλεύεις σε windows (φαντάζομαι) το Windows-1253 είναι ότι πρέπει. Αν δεν κάνω λάθος αυτό είχα χρησιμοποιήσει. Βέβαια μια δοκιμή θα σε πείσει.

  •  02-04-2009, 22:24 49811 σε απάντηση της 49777

    Απ: Πρόβλημα με encoding ελληνικού κειμένου από behind code

    Εξαιρετικά! Τη βρήκες την λύση.

    Μόνο να διορθώσω κάτι στη διατύπωσή σου, χωρίς να σημαίνει ότι λύνει το πρόβλημα με άλλο τρόπο. Η γραμμή globalization που έχεις δώσει δεν δηλώνει ελληνικό encoding, αλλά ελληνικό culture (δηλαδή πως θα εμφανίζονται ημερομηνίες, δεκαδικοί αριθμοί κλπ.) Το encoding σύμφωνα με αυτή την γραμμή είναι utf-8.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems