<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>WinForms</title><link>https://www.dotnetzone.gr:443/cs/forums/12/ShowForum.aspx</link><description>Θέματα για rich client / windows εφαρμογές, σε οποιαδήποτε γλώσσα (VB.NET, C#, managed C++, κ.α.)</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: codepage problem -μαλλον</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/40858.aspx</link><pubDate>Fri, 14 Mar 2008 23:31:33 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:40858</guid><dc:creator>zar0g</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/40858.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=40858</wfw:commentRss><description>&lt;P&gt;ο κωδικας ειναι σε ενα ειδος απλης κρυπτογραφισης που για καθε χαρακτηρα μου δινουν τον ascii code του&lt;/P&gt;
&lt;P&gt;ετσι παιρνω το 200 ας πουμε και το μετατρεπω σε χαρακτηρα &lt;/P&gt;
&lt;P&gt;αυτο που εκανα λαθος ειναι οτι μετετρεπα το χαρακτηρα σε Byte[] μεσω του getbytes του encoding αντι για το bitconverter&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ευχαριστω για το ενδιαφερον&lt;/P&gt;</description></item><item><title>Απ: codepage problem -μαλλον</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/40857.aspx</link><pubDate>Fri, 14 Mar 2008 22:59:10 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:40857</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/40857.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=40857</wfw:commentRss><description>&lt;p&gt;Αν καταλαβαίνω καλά, θέλεις να πάρεις το string που αντιστοιχεί στην τιμή 200 της κωδικοσελίδας windows-1253. Αν είναι έτσι, τότε και πάλι κάνεις πολλές μετατροπές. Το σωστό είναι αυτό:&lt;/p&gt;&lt;p&gt;Encoding windows1253encoding =&amp;nbsp; System.Text.Encoding.GetEncoding("windows-1253");&lt;br&gt;byte[] dataInBytes = new byte[] {200};&lt;br&gt;string dataInString = windows1253encoding .GetString(dataInBytes); &lt;br&gt;&lt;/p&gt;&lt;p&gt;ή σε μια γραμμή:&lt;/p&gt;&lt;p&gt;string dataInString = System.Text.Encoding.GetEncoding("windows-1253").GetString(new byte[] {200});&lt;/p&gt;</description></item><item><title>Απ: codepage problem -μαλλον</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/40855.aspx</link><pubDate>Fri, 14 Mar 2008 22:44:37 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:40855</guid><dc:creator>zar0g</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/40855.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=40855</wfw:commentRss><description>&lt;P&gt;Ευχαριστω για την απαντηση &lt;/P&gt;
&lt;P&gt;το βρηκα εχτες τελικα &lt;/P&gt;
&lt;P&gt;ανιτκατεστισα την γραμμη 3 με αυτο&lt;/P&gt;&lt;FONT color=#008080 size=2&gt;
&lt;P&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] b = &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;BitConverter&lt;/FONT&gt;&lt;FONT size=2&gt;.GetBytes(ch); &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;και επαιξε&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&amp;nbsp;&lt;/P&gt;&lt;/FONT&gt;</description></item><item><title>Απ: codepage problem -μαλλον</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/40852.aspx</link><pubDate>Fri, 14 Mar 2008 21:34:36 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:40852</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/40852.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=40852</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;zar0g:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Hi forum αντιμετωπιζω το εξης προβλημα&amp;nbsp;με την C#&lt;/p&gt;
&lt;p&gt;εκτελω την εντολη &lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#2b91af" size="2"&gt;Char&lt;/font&gt;&lt;font size="2"&gt; _ch = (&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;Char&lt;/font&gt;&lt;font size="2"&gt;)200; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;αυτο συμφωνα με το codepage windows-1253 ειναι το γραμμα 'Θ' αλλα εμενα μου επιστρεφει αυτο 'È'&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;προφανως λεω καποια μετατροπη θελει στο codepage&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Σωστή διαπίστωση. Όντως αυτή είναι η αντιστοιχία στο 1253, αλλά κάνοντας direct cast από byte σε char, δεν χρησιμοποιείς αυτό το encoding. &lt;br&gt;&lt;br&gt;&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;zar0g:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;
&lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;ετσι λοιπον εγραψα το παρακατω κωδικα &lt;/font&gt;&lt;/p&gt;&lt;font size="2"&gt;
&lt;/font&gt;&lt;p&gt;&lt;font color="#2b91af" size="2"&gt;1: Encoding&lt;/font&gt;&lt;font size="2"&gt; enc = &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;Encoding&lt;/font&gt;&lt;font size="2"&gt;.GetEncoding(1253) ;&lt;/font&gt;&lt;/p&gt;&lt;font size="2"&gt;
&lt;p&gt;&lt;font color="#2b91af" size="2"&gt;2: Char&lt;/font&gt;&lt;font size="2"&gt; _ch = (&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;Char&lt;/font&gt;&lt;font size="2"&gt;)200; &lt;/font&gt;&lt;/p&gt;&lt;font size="2"&gt;
&lt;/font&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;font color="#2b91af" size="2"&gt;3: Byte&lt;/font&gt;&lt;font size="2"&gt;[] b = enc.GetBytes(_ch.ToString());&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;
&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font color="#2b91af" size="2"&gt;4: String&lt;/font&gt;&lt;font size="2"&gt; res = enc.GetString(b);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;και αυτο που μου επιστρεφει στο string ειναι το 'E' αγγλικο που ειναι στη θεση 69 στο ascii table &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;Τι κανω λαθος ?&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;καμια λυση?&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;thanks&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Κάνεις πολλές μετατροπές. Από byte σε char (γραμμή 2), από char σε string και από string σε byte (γραμμή 3) και μετά από byte σε string! Μπερδεύτηκα!&lt;/p&gt;&lt;p&gt;Η λύση είναι η εξής: &lt;/p&gt;&lt;p&gt;byte[] dataInBytes = new byte[] {200};&lt;br&gt;char[] dataInChars = enc.GetChars(dataInBytes);&lt;br&gt;string dataInString = enc.GetString(dataInBytes);&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Ο λόγος που χρησιμοποιούμε arrays είναι γιατί δεν ξέρουμε αν ένα char αντιστοιχεί σε ένα byte. Στο unicode π.χ. ένα char είναι 2 bytes. Στο windows-1253 είναι 1 προς 1. Αν είσαι σίγουρος ότι αυτό είναι το encoding σου, τότε μπορείς με ασφάλεια να πάρεις το dataInChars[0].&lt;/p&gt;&lt;p&gt;Επίσης δεν είναι σίγουρος αν το &lt;font color="#2b91af" size="2"&gt;Encoding&lt;/font&gt;&lt;font size="2"&gt;.GetEncoding(1253) επιστρέφει το σωστό αποτέλεσμα. Δοκίμασε και το &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;Encoding&lt;/font&gt;&lt;font size="2"&gt;.GetEncoding("windows-1253").&lt;/font&gt;&lt;/p&gt;</description></item><item><title>codepage problem -μαλλον</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/40835.aspx</link><pubDate>Thu, 13 Mar 2008 23:37:22 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:40835</guid><dc:creator>zar0g</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/40835.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=40835</wfw:commentRss><description>&lt;P&gt;Hi forum αντιμετωπιζω το εξης προβλημα&amp;nbsp;με την C#&lt;/P&gt;
&lt;P&gt;εκτελω την εντολη &lt;FONT size=2&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Char&lt;/FONT&gt;&lt;FONT size=2&gt; _ch = (&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Char&lt;/FONT&gt;&lt;FONT size=2&gt;)200; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;αυτο συμφωνα με το codepage windows-1253 ειναι το γραμμα 'Θ' αλλα εμενα μου επιστρεφει αυτο 'È'&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;προφανως λεω καποια μετατροπη θελει στο codepage ετσι λοιπον εγραψα το παρακατω κωδικα &lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Encoding&lt;/FONT&gt;&lt;FONT size=2&gt; enc = &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Encoding&lt;/FONT&gt;&lt;FONT size=2&gt;.GetEncoding(1253) ;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;FONT color=#2b91af size=2&gt;Char&lt;/FONT&gt;&lt;FONT size=2&gt; _ch = (&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Char&lt;/FONT&gt;&lt;FONT size=2&gt;)200; &lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] b = enc.GetBytes(_ch.ToString());&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; res = enc.GetString(b);&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;και αυτο που μου επιστρεφει στο string ειναι το 'E' αγγλικο που ειναι στη θεση 69 στο ascii table &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Τι κανω λαθος ?&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;καμια λυση?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;thanks&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description></item></channel></rss>