<?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>Λοιπά θέματα</title><link>https://www.dotnetzone.gr:443/cs/forums/29/ShowForum.aspx</link><description>Οτιδήποτε άλλα θέματα developing που δεν κολλάνε σε κάποιο από τα υπόλοιπα forums!</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71540.aspx</link><pubDate>Wed, 07 Nov 2012 05:01:43 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71540</guid><dc:creator>airboy</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71540.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71540</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;Παναγιώτης Καναβός:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Ακόμα δεν έχεις δώσει τον κώδικα που χρησιμοποιείς για το upload. Χρησιμοποιείς τον WebClient? Το FtpWebRequest? Κάποια άλλη κλάση?&amp;nbsp;Χωρίς τον κώδικα και την έκδοση του server είναι σχεδόν αδύνατο να σε βοηθήσει κανείς.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Η μορφή του string στη C# δεν έχει σημασία γιατί την μετατροπή την κάνει ο WebClient ή το FtpWebRequest κατά το negotiation. Αν αναναγκάζεσαι να κάνεις decode κάτι πηγαίνει στραβά, ή στον κώδικα σου ή στο server. Συνήθως μπορείς να δεις την έκδοση του server αν κάνεις ένα απλό ftp από το command line. Η έκδοση του server εμφανίζεται στο banner που σου γυρίζει ο server όταν μπεις.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Από τη στιγμή που θέλεις να χρησιμοποιήσεις τον κώδικα για commercial χρήση θα πρέπει να λύσεις οπωσδήποτε το πρόβλημα αντί να το κουκουλώσεις. Πρώτα θα πρέπει να ελέγξεις ότι ο server υποστηρίζει το σωστό RFC κοιτάζοντας την έκδοση του. Μετά θα πρέπει να δοκιμάσεις να ανεβάσεις ελληνικά αρχεία χρησιμοποιώντας κάποιο άλλο client, ή ακόμα και το command line. Το command line θα είναι πολύ χρήσιμο καθώς θα μπορέσεις &amp;nbsp;να δώσεις τις εντολές FEAT και OPT για να δεις πως συμπεριφέρεται ο server.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν δεις ότι ο server δεν υποστηρίζει Unicode, χώστα στον hoster - είναι δική του δουλειά να παρέχει ένα συμβατό ftp server, ή βρες άλλο hoster.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν όμως δεις ότι το upload δουλεύει με διάφορους clients αλλά όχι με τον κώδικα σου, θα πρέπει να δεις τί συμβαίνει. Πρώτα, θα πρέπει να δοκιμάσεις να κάνεις ένα απλό &lt;a href="http://msdn.microsoft.com/en-us/library/ms229715.aspx"&gt;UploadFile &lt;/a&gt;&amp;nbsp;για να βεβαιωθείς ότι το απλό upload δολεύει. Αν δεις κάτι περίεργο,&amp;nbsp;θα πρέπει να βάλεις το &lt;a href="http://www.wireshark.org/"&gt;WireShark &lt;/a&gt;ή το &lt;a href="https://groups.google.com/forum/?fromgroups=#!topic/httpfiddler/nD6j7aBE0Ac"&gt;Fiddler &lt;/a&gt;για να δεις τα πακέτα που ανταλλάσονται μεταξύ του κώδικα σου και του server.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Σωστό και αυτό... &lt;br&gt;Λοιπόν για να κάνω upload αρχεία ή να δημιουργήσω φάκελο(που και εκεί έχω πρόβλημα) χρησιμοποιώ μια opensource βιβλιοθήκη που βρήκα. Την &lt;a href="http://ftplib.codeplex.com/"&gt;fptLib&lt;/a&gt;. Παρακάτω παραθέτω κομμάτι του κώδικα που κάνει το upload.&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;                FtpConnection ftp &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; FtpConnection(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"ftp.kati.com"&lt;/span&gt;, &lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"user"&lt;/span&gt;, &lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"pass"&lt;/span&gt;);

                ftp.Open(); &lt;span style="color:Green;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/* Open the FTP connection */&lt;/span&gt;
                ftp.Login(); &lt;span style="color:Green;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/* Login using previously provided credentials */&lt;/span&gt;

                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;if&lt;/span&gt; (ftp.DirectoryExists(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"/Upload"&lt;/span&gt;)) &lt;span style="color:Green;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/* check that a directory exists */&lt;/span&gt;
                    ftp.SetCurrentDirectory(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"/Upload"&lt;/span&gt;); &lt;span style="color:Green;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/* change current directory */&lt;/span&gt;

                    
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;try&lt;/span&gt;
                {
                    
                    
                    ftp.PutFile(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;@"d:\Κάτι.html"&lt;/span&gt;); 
                    ftp.CreateDirectory(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Φάκελος"&lt;/span&gt;);
                    ftp.Close();
                }
                &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;catch&lt;/span&gt; (Exception ex)
                {
                    Console.WriteLine(String.Format(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"FTP Error: {0}"&lt;/span&gt;, ex.Message));
                }
            &lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;Πρέπει επίσης να πω οτι δοκίμασα και με τον απλό τρόπο που προσφέρει το .NET 3.5 Framework για την διαχείριση ενός FTP αλλά μάταια...&lt;br&gt;Ότι και να κάνω πάλι ερωτηματικά μου βγάζει.&lt;br&gt;Τέλος, μίλησα και με τον hoster και μου είπανε οτι δεν είναι πρόβλημα του server. Για να πώ την αλήθεια ενδεχομένως και να το είπανε για να &lt;br&gt;αποφύγουν να με εξυπηρετήσουν. &lt;br&gt;&lt;br&gt;Τι να πώ... τα σχόλια δικά σας.&lt;br&gt;Ευχαριστώ &lt;br&gt;Αλέξανδρος&lt;br&gt;&lt;br&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71535.aspx</link><pubDate>Mon, 05 Nov 2012 20:00:46 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71535</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71535.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71535</wfw:commentRss><description>Ακόμα δεν έχεις δώσει τον κώδικα που χρησιμοποιείς για το upload. Χρησιμοποιείς τον WebClient? Το FtpWebRequest? Κάποια άλλη κλάση?&amp;nbsp;Χωρίς τον κώδικα και την έκδοση του server είναι σχεδόν αδύνατο να σε βοηθήσει κανείς.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Η μορφή του string στη C# δεν έχει σημασία γιατί την μετατροπή την κάνει ο WebClient ή το FtpWebRequest κατά το negotiation. Αν αναναγκάζεσαι να κάνεις decode κάτι πηγαίνει στραβά, ή στον κώδικα σου ή στο server. Συνήθως μπορείς να δεις την έκδοση του server αν κάνεις ένα απλό ftp από το command line. Η έκδοση του server εμφανίζεται στο banner που σου γυρίζει ο server όταν μπεις.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Από τη στιγμή που θέλεις να χρησιμοποιήσεις τον κώδικα για commercial χρήση θα πρέπει να λύσεις οπωσδήποτε το πρόβλημα αντί να το κουκουλώσεις. Πρώτα θα πρέπει να ελέγξεις ότι ο server υποστηρίζει το σωστό RFC κοιτάζοντας την έκδοση του. Μετά θα πρέπει να δοκιμάσεις να ανεβάσεις ελληνικά αρχεία χρησιμοποιώντας κάποιο άλλο client, ή ακόμα και το command line. Το command line θα είναι πολύ χρήσιμο καθώς θα μπορέσεις &amp;nbsp;να δώσεις τις εντολές FEAT και OPT για να δεις πως συμπεριφέρεται ο server.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν δεις ότι ο server δεν υποστηρίζει Unicode, χώστα στον hoster - είναι δική του δουλειά να παρέχει ένα συμβατό ftp server, ή βρες άλλο hoster.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν όμως δεις ότι το upload δουλεύει με διάφορους clients αλλά όχι με τον κώδικα σου, θα πρέπει να δεις τί συμβαίνει. Πρώτα, θα πρέπει να δοκιμάσεις να κάνεις ένα απλό &lt;a href="http://msdn.microsoft.com/en-us/library/ms229715.aspx"&gt;UploadFile &lt;/a&gt;&amp;nbsp;για να βεβαιωθείς ότι το απλό upload δολεύει. Αν δεις κάτι περίεργο,&amp;nbsp;θα πρέπει να βάλεις το &lt;a href="http://www.wireshark.org/"&gt;WireShark &lt;/a&gt;ή το &lt;a href="https://groups.google.com/forum/?fromgroups=#!topic/httpfiddler/nD6j7aBE0Ac"&gt;Fiddler &lt;/a&gt;για να δεις τα πακέτα που ανταλλάσονται μεταξύ του κώδικα σου και του server.&amp;nbsp;&lt;/div&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71531.aspx</link><pubDate>Mon, 05 Nov 2012 03:51:53 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71531</guid><dc:creator>airboy</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71531.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71531</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;Παναγιώτης Καναβός:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Και τί στέλνεις στον FTP server? Το 1253? Αυτό είναι το αντίθετο από αυτό που σου πρότεινα. Αντί να φροντίσεις να έχεις παντού Unicode, κάνεις μετατροπές μεταξύ codepages. Ο κώδικας σου θα δουλέψει MONO ο linux server θεωρεί ότι το Ascii codepage είναι το 1253. Αυτό που κάνεις θα δουλέψει μόνο στον συγκεκριμένο server. Αυτό που έκανες σπάει τον τρόπο που δουλεύει το FTP και θα σου δημιουργήσει προβλήματα σε άλλους servers.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Ένας server ο οποίος υποστηρίζει σωστά το UTF8 είναι ο FileZilla και υπάρχει και&amp;nbsp;&lt;a href="http://wiki.filezilla-project.org/Character_Set"&gt;ένα άρθρο&lt;/a&gt;&amp;nbsp;το οποίο περιγράφει ακριβώς το πρόβλημα που έχεις και ποιά είναι η σωστή συμπεριφορά που υλοποιεί ο FileZilla με τις στάνταρ εντολές FEAT και OPTS. Θα δεις ότι η σωστή συμπεριφορά είναι ο FTP Server να θεωρεί ότι τα ονόματα είναι πάντα UTF8. Ο client το καταλαβαίνει αυτό με την εντολή FEAT η οποία θα του πει αν ο server υποστηρίζει UTF8 ή όχι.&amp;nbsp;Κάποιοι αρχαίοι linux ftp servers όμως δεν υποστηρίζουν το UTF8 οπότε θα πρέπει να δεις ποιός είναι ο server, ποιά είναι η έκδοση του. Μάλιστα, μήπως είναι ώρα να γίνει upgrade αυτό ο server σε κάτι πιο σύγχρονο? Η υποστήριξη UTF8 μπήκε το 1999.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν ρίξεις μία ματιά στο &lt;a href="http://nzbart.blogspot.gr/2010/11/uploading-file-using-ftp-and-webclient.html"&gt;Uploading a file using FTP and the WebClient&lt;/a&gt;&amp;nbsp;θα δεις ότι ο WebClient στέλνει και ένα OPTS UTF8 ON πριν ανεβάσει ένα αρχείο, επειδή κάποιοι παλιότεροι servers δεν καταλάβαιναν το UTF8 αν δεν έδινες αυτή την εντολή. Κανονικά, ο FTP server θα έπρεπε να χρησιμοποιήσει UTF8 ακόμα και χωρίς το OPTS UTF8 ON. &amp;nbsp;Μόνο αν πρόκειται για non-standard server έχει νόημα να ασχοληθείς με τα codepages.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Σε καμμία περίπτωση όμως δεν θα πρέπει να βασίσεις την συμπεριφορά της εφαρμογής σου σε εξαιρέσεις όπως αυτή. Η αλλαγή codepage θα πρέπει να χρησιμοποιηθεί μόνο ως η απολύτως τελευταία λύση.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Παναγιώτη, ουσιαστικά εμένα το πρόβλημά μου ήταν οτι προσπαθούσα μέσα απο το λογισμικό μου να ανεβάσω ένα αρχείο στον server μου(που παρεπιπτώντος είναι μισθωμένος, οπότε δεν έχω και πολύ μεγάλη επιρροή όσων αφορά την αναβάθμιση κλπ..) και όταν το αρχείο είχε ελληνικό όνομα μου το πέρναγε με ερωτηματικά.&lt;br&gt;&lt;br&gt;Ουσιαστικά μετά απο πολύ διάβασμα και ψάξιμο στο internet για παρόμοιες περιπτώσεις, είδα οτι η C#.Net όταν παράγει ένα αλφαριθμητικό (string) αυτό παράγεται με κωδικοποίηση UTF-16 η οποία δεν περιέχει τους ελληνικούς χαρακτήρες. Έτσι εγώ με τον κώδικά μου γυρίζω το string σε 1253 Encoding για να μπορεί να το παράγει με τους Ελληνικούς χαρακτήρες. Ο κώδικας δεν επηρεάζει το αρχείο, αλλά μόνο το όνομά του. Δεν ξέρω αν είναι λάθος ο τρόπος που το διαχειρίστηκα, που ενδεχομένως να είναι αλλά είναι η πρώτη φορά που δημιουργώ κώδικα για FTP και είχα το συγκεκριμένο πρόβλημα. &lt;br&gt;&lt;br&gt;Δεν το έχω δοκιμάσει σε άλλον server αλλά αυτό που μπορώ να σου πω με βεβαιότητα είναι ότι όταν κάνω download το αρχείο πίσω, χρειάζεται decode γιατί μου έρχεται πάλι αλαμπουρνέζικα.&lt;br&gt;&lt;br&gt;Αν υπάρχει πιο σωστή λύση ευχαρίστως θα την δεχτώ γιατί το λογισμικό μου θα είναι commercial και θέλω να είναι στην εντέλεια. &lt;br&gt;Ευχαριστώ πολύ.&lt;br&gt;Αλέξανδρος&lt;br&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71514.aspx</link><pubDate>Wed, 31 Oct 2012 20:56:57 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71514</guid><dc:creator>nikos123</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71514.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71514</wfw:commentRss><description>Μπερδεύτηκα&amp;nbsp;με τους αριθμούς των&amp;nbsp;απαντήσεων&amp;nbsp; &amp;nbsp;"xxxxxxxx σε&amp;nbsp;απάντηση&amp;nbsp;της yyyyyyyy"&amp;nbsp;&lt;img src="http://www.dotnetzone.gr/cs/emoticons/emotion-1.gif" alt="Smile" /&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71513.aspx</link><pubDate>Wed, 31 Oct 2012 20:52:51 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71513</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71513.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71513</wfw:commentRss><description>Νίκο, το post απευθυνόταν στον airboy. Η αλλαγή του code page ενός αρχείου μέσω του Visual Studio μπορεί να είναι χρήσιμη αν πχ. έχεις ένα HTML, ASPX ή text αρχείο σε Ascii encoding, δεν βοηθάει όμως σε τίποτα όταν αυτό που ζητάς είναι πως θα κάνεις upload το συγκεκριμένο αρχείο χρησιμοποιώντας unicode ονόματα.</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71512.aspx</link><pubDate>Wed, 31 Oct 2012 20:43:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71512</guid><dc:creator>nikos123</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71512.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71512</wfw:commentRss><description>&lt;div&gt;Εννοώ ότι μπορείς να αλλάζεις τα codepages.&lt;/div&gt;&lt;div&gt;Αν ήταν ήδη σε κάποιο "λάθος" codepage (1253) να το μετατρέψεις σε "σωστό" (Unicode)&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71510.aspx</link><pubDate>Wed, 31 Oct 2012 18:56:52 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71510</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71510.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71510</wfw:commentRss><description>Και τί στέλνεις στον FTP server? Το 1253? Αυτό είναι το αντίθετο από αυτό που σου πρότεινα. Αντί να φροντίσεις να έχεις παντού Unicode, κάνεις μετατροπές μεταξύ codepages. Ο κώδικας σου θα δουλέψει MONO ο linux server θεωρεί ότι το Ascii codepage είναι το 1253. Αυτό που κάνεις θα δουλέψει μόνο στον συγκεκριμένο server. Αυτό που έκανες σπάει τον τρόπο που δουλεύει το FTP και θα σου δημιουργήσει προβλήματα σε άλλους servers.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Ένας server ο οποίος υποστηρίζει σωστά το UTF8 είναι ο FileZilla και υπάρχει και&amp;nbsp;&lt;a href="http://wiki.filezilla-project.org/Character_Set"&gt;ένα άρθρο&lt;/a&gt;&amp;nbsp;το οποίο περιγράφει ακριβώς το πρόβλημα που έχεις και ποιά είναι η σωστή συμπεριφορά που υλοποιεί ο FileZilla με τις στάνταρ εντολές FEAT και OPTS. Θα δεις ότι η σωστή συμπεριφορά είναι ο FTP Server να θεωρεί ότι τα ονόματα είναι πάντα UTF8. Ο client το καταλαβαίνει αυτό με την εντολή FEAT η οποία θα του πει αν ο server υποστηρίζει UTF8 ή όχι.&amp;nbsp;Κάποιοι αρχαίοι linux ftp servers όμως δεν υποστηρίζουν το UTF8 οπότε θα πρέπει να δεις ποιός είναι ο server, ποιά είναι η έκδοση του. Μάλιστα, μήπως είναι ώρα να γίνει upgrade αυτό ο server σε κάτι πιο σύγχρονο? Η υποστήριξη UTF8 μπήκε το 1999.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν ρίξεις μία ματιά στο &lt;a href="http://nzbart.blogspot.gr/2010/11/uploading-file-using-ftp-and-webclient.html"&gt;Uploading a file using FTP and the WebClient&lt;/a&gt;&amp;nbsp;θα δεις ότι ο WebClient στέλνει και ένα OPTS UTF8 ON πριν ανεβάσει ένα αρχείο, επειδή κάποιοι παλιότεροι servers δεν καταλάβαιναν το UTF8 αν δεν έδινες αυτή την εντολή. Κανονικά, ο FTP server θα έπρεπε να χρησιμοποιήσει UTF8 ακόμα και χωρίς το OPTS UTF8 ON. &amp;nbsp;Μόνο αν πρόκειται για non-standard server έχει νόημα να ασχοληθείς με τα codepages.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Σε καμμία περίπτωση όμως δεν θα πρέπει να βασίσεις την συμπεριφορά της εφαρμογής σου σε εξαιρέσεις όπως αυτή. Η αλλαγή codepage θα πρέπει να χρησιμοποιηθεί μόνο ως η απολύτως τελευταία λύση.&amp;nbsp;&lt;/div&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71500.aspx</link><pubDate>Tue, 30 Oct 2012 17:19:35 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71500</guid><dc:creator>nikos123</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71500.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71500</wfw:commentRss><description>Μπορείς και&amp;nbsp;από&amp;nbsp;το μενού του visual studio&amp;nbsp;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;File--&amp;gt;Advanced Save Options --&amp;gt;Encoding&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Edit&amp;nbsp;&lt;/div&gt;&lt;div&gt;Αυτό είναι για το περιεχόμενο , όχι το όνομα του αρχείου&lt;/div&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71498.aspx</link><pubDate>Tue, 30 Oct 2012 04:16:30 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71498</guid><dc:creator>airboy</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71498.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71498</wfw:commentRss><description>Σ' ευχαριστώ πολύ για την απάντηση... τελικά βρήκα λύση στο πρόβλημά μου και την παραθέτω εδώ μήπως την χρειαστεί και κάποιος άλλος.&lt;br&gt;Χρησιμοποιώ VS2008, linux server και γράφω σε C#&lt;br&gt;O παρακάτω κώδικας παίρνει ένα όνομα και το μετατρέπει απο το Encoding του υπολογιστή σε ελληνικό encoding και αντίστροφρα&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; greekEncoder(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; original)
        {
            Encoding sourceEncoding &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Encoding.UTF8;

            Encoding targetEncoding &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Encoding.GetEncoding(1253);

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;byte&lt;/span&gt;[] encodeTheseChars &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; sourceEncoding.GetBytes(original);

            String recoded_string &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; targetEncoding.GetString(encodeTheseChars);

            Console.WriteLine(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"string= {0}"&lt;/span&gt;, recoded_string);
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; recoded_string;
        }
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; greekDecoder(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; original)
        {
            Encoding sourceEncoding &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Encoding.GetEncoding(1253);

            Encoding targetEncoding &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Encoding.Default;

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;byte&lt;/span&gt;[] encodeTheseChars &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; sourceEncoding.GetBytes(original);

            String recoded_string &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; targetEncoding.GetString(encodeTheseChars);

            Console.WriteLine(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"string= {0}"&lt;/span&gt;, recoded_string);
            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; recoded_string;
        }&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;το string που επιστρέφεται έρχεται κωδικοποιημένο.&lt;br&gt;Σε εμένα δούλεψε και ελπίζω να βοήθησα και κάποιον που το ψάχνει&lt;br&gt;Ευχαριστώ!&lt;br&gt;</description></item><item><title>Απ: Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71494.aspx</link><pubDate>Mon, 29 Oct 2012 20:10:26 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71494</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71494.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71494</wfw:commentRss><description>Αυτό συμβαίνει όταν προσπαθείς να αποθηκεύσεις/ανεβάσεις/μετατρέψεις ελληνικούς χαρακτήρες σε ASCII ή οποιοδήποτε άλλο codepage. Οι χαρακτήρες ή θα εμφανιστούν "κινέζικοι" ή θα δεις κουτάκια, ή ερωτηματικά. Το όνομα ενός αρχείου είναι στην πραγματικότητα ένα URL οπότε θα πρέπει να χρησιμοποιήσεις είτε unicode ονόματα (αν το υποστηρίζει ο FTP Server) ή να κάνεις URL encode το όνομα του αρχείου πριν το ανεβάσεις. Διαφορετικά ο server θα προσπαθήσει να αποθηκεύσει το όνομα ως ASCII.&amp;nbsp;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Δεν λες πως ανεβάζεις τα αρχεία, αν το κάνεις με κώδικα ή με κάποιο πρόγραμμα για να σου απαντήσουμε πως να το κάνεις σωστά. Θα πρέπει επίσης να αναφέρεις τί είναι ο ftp server (IIS? κάτι άλλο? έκδοση?) γιατί μπορεί ο ίδιος ο FTP servers να έχει πρόβλημα με non-Ascii χαρακτήρες&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αν ψάξεις για "ftp non-ascii file names" θα δεις ότι πολύς κόσμος έχει το ίδιο πρόβλημα.&lt;/div&gt;</description></item><item><title>Πρόβλημα με ανέβασμα φακέλου σε FTP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/71487.aspx</link><pubDate>Sat, 27 Oct 2012 21:17:17 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:71487</guid><dc:creator>airboy</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/71487.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=29&amp;PostID=71487</wfw:commentRss><description>Καλησπέρα,&lt;br&gt;Ενδεχομένως να έχει αντιμετωπίσει κιάλλος αυτό το πρόβλημα αλλά δεν μπορώ να βρώ λύση...&lt;br&gt;Φτιάχνω μια εφαρμογή η οποία ανεβάζει κάτι φακέλους σε ftp. Όμως οι φάκελοι αυτοί είναι στα Ελληνικά.&lt;br&gt;Οπότε τους ανεβάζει με όνομα "?????". Δηλαδή δεν αναγνωρίζει τους ελληνικούς χαρακτήρες.&lt;br&gt;Όποιος ξέρει κάτι ας βοηθήσει.. έχω ψάξει όλο το ίντερνετ.. &lt;br&gt;Ευχαριστώ&lt;br&gt;</description></item></channel></rss>