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

 

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

Write a string to file

Îåêßíçóå áðü ôï ìÝëïò Adamantios. Τελευταία δημοσίευση από το μέλος Adamantios στις 11-04-2006, 15:22. Υπάρχουν 2 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  10-04-2006, 20:31 11760

    Write a string to file

    Καλησπερίζω την λίστα J

     

    Τελικά κατάφερα να μπερδευτώ τελείως και να μην μπορέσω να βγάλω άκρη! Αυτό που θέλω να κάνω είναι να γράψω ένα string σε κάποιο αρχείο. Για να το καταφέρω αυτό κάνω το εξής:

     

            Dim sw As System.IO.StreamWriter

           

            sw = System.IO.File.CreateText("myShortHTML.html")

            sw.Write(strTemplate)

            sw.Flush()

            sw.Close()

     

    όπου strTemplate το string που θέλω να περάσω. Όλα καλά εκτός του ότι το σώζει σε UTF-8 οπότε όταν ανεβαίνει στο internet (όπως καταλαβαίνετε και από την κατάληξη του αρχείου) να βγαίνουν «παρλαπιπάκια» και να χρειάζεται αλλαγή σε UTF-8. Καμιά ιδέα ώστε να ξεπεράσω το πρόβλημα;

     

    Διαμάντης


    A wise man does not urinate against the wind Smile
  •  10-04-2006, 21:38 11763 σε απάντηση της 11760

    Απ: Write a string to file

    Δεν υπάρχει κάποιο πρόβλημα με το UTF8, απλά θα πρέπει να προσθέσεις το κατάλληλο tag στο HTML σου για να καταλάβει ο browser τί encoding χρησιμοποιείς. Θα πρέπει να γράψεις κάτι σαν το <META HTTP-EQUIV=""Content-Type"" CONTENT=""text/html; CHARSET=utf-8"">. Αν δεν βάλεις αυτό το tag ο browser θα αναγκαστεί να μαντέψει τί encoding χρησιμοποίησες. Αν μαντέψει λάθος θα εμφανιστούν κινέζικα, παρλαπιπάκια ή ερωτηματικά. Οποιοδήποτε encoding και να χρησιμοποιήσεις θα πρέπει να ορίσεις το αντίστοιχο charset αν θέλεις να είσαι σίγουρος ότι ο οποιοσδήποτε browser θα χρησιμοποιήσει το σωστό encoding.

    Αν πρέπει οπωσδήποτε να χρησιμοποιήσεις διαφορετικό encoding, θα πρέπει να χρησιμοποιήσεις την κλάση StreamWriter αντί για την File.CreateText. Και πάλι, θα πρέπει να βάλεις το tag με το σωστό encoding όπως παρακάτω:



       Dim sw As New System.IO.StreamWriter("myShortHTML.html",false,Encoding.GetEncoding("windows-1253"))
       sw.Write("<html><META HTTP-EQUIV=""Content-Type"" CONTENT=""text/html; CHARSET=windows-1253""><body>Καλημερούδια</body></html>")
       sw.Flush()
       sw.Close()

     


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  11-04-2006, 15:22 11781 σε απάντηση της 11763

    Απ: Write a string to file

    Καλημέρα

    Αυτό που έψαχνα είιναι ο δεύτερος τρόπος που μου προτείνεις. Αυτό που όμως δεν μπορώ να καταλάβω είναι πως ακριβώς συντάσσετε και χρησιμοποιείτε η StreamWriter (αλλά και η StreamReader). Μήπως ξέρεις που μπορώ να βρώ κανένα καλό παράδειγμα;

     

     


    A wise man does not urinate against the wind Smile
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems