<?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/74/ShowForum.aspx</link><description>Τα πρώτα βήματα στις γλώσσες VB6, VB.NET, και C#</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46154.aspx</link><pubDate>Wed, 12 Nov 2008 06:30:55 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46154</guid><dc:creator>Vangos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46154.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46154</wfw:commentRss><description>Ή έτσι ή διαδοχικά. Ό,τι σε βολεύει ανάλογα με αυτό που κάνεις.&lt;br&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46125.aspx</link><pubDate>Mon, 10 Nov 2008 19:23:32 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46125</guid><dc:creator>kallileo</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46125.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46125</wfw:commentRss><description>&lt;P&gt;Εχεις δικιο για την αρχικοποιηση...&lt;/P&gt;&lt;P&gt;Το μεγιστο μηκος το εφτιαξα με string.Remove(18) και μετα string.PadLeft().&lt;/P&gt;&lt;P&gt;Για να χρησιμοποιησω using και για τα αλλα δυο πρεπει να τα βάλω nested μεσα στο πρωτο using?&lt;/P&gt;&lt;P&gt;Δηλαδη...&lt;/P&gt;&lt;P&gt;using (sr = new StreamReader(label1.Text))&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&lt;BLOCKQUOTE&gt;using (file = new FileStream(saveFileDialog1.FileName, FileMode.OpenOrCreate, FileAccess.Write);)&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;using (sw = new StreamWriter(file);)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE&gt;}&lt;/BLOCKQUOTE&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46118.aspx</link><pubDate>Sun, 09 Nov 2008 02:21:14 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46118</guid><dc:creator>Vangos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46118.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46118</wfw:commentRss><description>Η χρήση του using ουσιαστικά πραγματοποιεί και το κλείσιμο του αρχείου και ελέγχει, αν δεν κάνω λάθος, για τυχόν exceptions. Οπότε, το try που έχεις από πάνω μπορεί να πάει μέσα (χωρίς να σημαίνει ότι κάνεις κάτι λάθος). Επίσης, μπορείς να χρησιμοποιήσεις using και για την StreamWriter και για την FileStream ή ένα try για όλα μαζί.&lt;br&gt;&lt;br&gt;Προσωπικά, συνηθίζω να κάνω τη δήλωση των streams εκτός του try και την αρχικοποίησή τους μέσα σε αυτό.&lt;br&gt;&lt;br&gt;Σχετικά με το μέγιστο μήκος 18 χαρακτήρων που ρωτάς, μπορείς να χρησιμοποιήσεις την &lt;a href="http://msdn.microsoft.com/en-us/library/2839d5h5%28VS.71%29.aspx"&gt;StringBuilder&lt;/a&gt; κάπως έτσι:&lt;br&gt;&lt;br&gt;StringBuilder sb = new StringBuilder(aString, 18);&lt;br&gt;ή&lt;br&gt;StringBuilder sb = new SringBuilder();&lt;br&gt;sb.Capacity = 18;&lt;br&gt;&lt;br&gt;και στη συνέχεια, προκειμένου να αναθέσεις την τιμή της σε κάποιο άλλο string, γράφεις string anotherString = sb.ToString();&lt;br&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46111.aspx</link><pubDate>Sat, 08 Nov 2008 09:58:52 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46111</guid><dc:creator>kallileo</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46111.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46111</wfw:commentRss><description>&lt;P&gt;Εκανα κατι δοκιμες κολλουσα κωδικα απο δω, εγγραφα απο διπλα....μπαχαλο εγινε. Σιγουρα το προβλημα δεν ειναι το sw.Write(final"). Στο object StreamReader περναω την διαδρομη για το αρχειο εισοδου(πιο πανω στο προγραμμα εχω label1.Text = openFileDialog1.FileName;). Εκει δεν εχει σιγουρα προβλημα. Διαβαζω καποιες γραμμές εκει και μετα τις κανω τροποποιηση με Split, Replace και λοιπα. Μεχρι εδω ολα καλα...&lt;/P&gt;&lt;P&gt;Το προβλημα παρουσιαζονταν οταν πηγαινα να γραψω το τελικο modified string σε νεο αρχειο. Τελικα ομως ο παρακατω κωδικας φαινεται λειτουργει σωστα. Επισης μπορω να κανω την temp[0] να εχει μεγιστο 18 χαρακτηρες και οταν τυπωνεται στο αρχειο να εχει δεξια στοιχιση χωρις πολλα πολλα? Στην C π.χ θα μπορουσα να γραψω printf("%18.18s");. &lt;/P&gt;&lt;P&gt;Καμια συμβουλη για βελτιωση του κωδικα?&lt;/P&gt;&lt;P&gt;private void button3_Click(object sender, EventArgs e)&lt;BR&gt;        {&lt;BR&gt;            try&lt;BR&gt;            {&lt;BR&gt;                using (StreamReader sr = new StreamReader(label1.Text))&lt;BR&gt;                {&lt;BR&gt;                    FileStream file = new FileStream("c:\\anal\\OUT\\test.txt", FileMode.OpenOrCreate, FileAccess.Write);&lt;BR&gt;                    StreamWriter sw = new StreamWriter(file);&lt;BR&gt;                    string line;&lt;BR&gt;&lt;BR&gt;                    while ((line = sr.ReadLine()) != null)&lt;BR&gt;                    {&lt;BR&gt;                        string[] temp = line.Split(new char[] { ';', });&lt;BR&gt;                        temp[1] = temp[1].Replace(",", "");&lt;BR&gt;                        temp[2] = temp[2].Replace(",", "");&lt;BR&gt;                        temp[3] = temp[3].Replace(",", "");&lt;BR&gt;                        if (temp[1].Length &amp;lt; 3)&lt;BR&gt;                            temp[1] = "0" + temp[1];&lt;BR&gt;                        string final = temp[0] + temp[1] + "       " + temp[2] + " " + temp[3] + "    " + temp[4] + temp[5];&lt;BR&gt;                        //MessageBox.Show(final);&lt;BR&gt;                        sw.WriteLine(final);&lt;BR&gt;&lt;BR&gt;                    }&lt;BR&gt;&lt;BR&gt;                    sw.Close();&lt;BR&gt;                    file.Close();&lt;BR&gt;                }&lt;BR&gt;            }&lt;BR&gt;            catch (Exception ex)&lt;BR&gt;            {&lt;BR&gt;                MessageBox.Show(ex.ToString());&lt;BR&gt;            }&lt;BR&gt;            finally&lt;BR&gt;            {&lt;BR&gt;                &lt;BR&gt;            }&lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;/P&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46110.aspx</link><pubDate>Sat, 08 Nov 2008 08:09:18 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46110</guid><dc:creator>Vangos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46110.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46110</wfw:commentRss><description>Πέρα από αυτό που λέει ο Παναγιώτης, έχεις  ένα " στο sw.Write(final") το οποίο θα χτυπάει στη μεταγλώττιση, αλλά μάλλον δεν είναι αυτό το πρόβλημα. Πες καλύτερα τι θέλεις να γίνεται ;)</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46109.aspx</link><pubDate>Sat, 08 Nov 2008 07:11:13 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46109</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46109.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46109</wfw:commentRss><description>&lt;P&gt;Άσχετα από τα using και StreamReader, τί προσπαθείς να κάνεις? Φαίνεται σαν να προσπαθείς να αφαιρέσεις κόματα και newline από το περιεχόμενο του label1.Text. Αυτό μπορείς να το κάνεις πολύ απλά με label1.Text.Replace(;','').Replace(',','').Replace("\n","")&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46103.aspx</link><pubDate>Sat, 08 Nov 2008 03:44:17 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46103</guid><dc:creator>kallileo</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46103.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=46103</wfw:commentRss><description>&lt;P&gt;Τι λαθος κανω εδω?&lt;/P&gt;&lt;P&gt;private void button3_Click(object sender, EventArgs e)&lt;BR&gt;        {&lt;BR&gt;            try&lt;BR&gt;            {&lt;BR&gt;                using (StreamReader sr = new StreamReader(label1.Text))&lt;BR&gt;                {&lt;BR&gt;                    FileStream file = new FileStream("c:\\analyzer\\OUT\\test.txt", FileMode.OpenOrCreate, FileAccess.Write);&lt;BR&gt;                    StreamWriter sw = new StreamWriter(file);&lt;BR&gt;                    string line;&lt;BR&gt;&lt;BR&gt;                    while ((line = sr.ReadLine()) != null)&lt;BR&gt;                    {&lt;BR&gt;                        string[] temp = line.Split(new char[] { ';', });&lt;BR&gt;                        temp[1] = temp[1].Replace(",", "");&lt;BR&gt;                        temp[2] = temp[2].Replace(",", "");&lt;BR&gt;                        temp[3] = temp[3].Replace(",", "");&lt;BR&gt;                        if (temp[1].Length &amp;lt; 3)&lt;BR&gt;                            temp[1] = "0" + temp[1];&lt;BR&gt;                        string final = temp[0] + temp[1] + "       " + temp[2] + " " + temp[3] + "    " + temp[4] + temp[5];&lt;BR&gt;                        //MessageBox.Show(final);&lt;BR&gt;  sw.Write(final");&lt;BR&gt;&lt;BR&gt;                    }&lt;BR&gt;&lt;BR&gt;                    sw.Close();&lt;BR&gt;                    file.Close();&lt;BR&gt;                }&lt;BR&gt;            }&lt;BR&gt;&lt;BR&gt;&lt;/P&gt;&lt;P&gt;To αρχειο που δημιουργειται ειναι αδειο...&lt;/P&gt;&lt;P&gt;Το object streamreader πως πρεπει να μπει σωστα στην using.&lt;/P&gt;</description></item><item><title>Απ: String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45995.aspx</link><pubDate>Wed, 05 Nov 2008 17:38:22 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45995</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45995.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=45995</wfw:commentRss><description>Μπορείς να χρησιμοποιήσεις τις μεθόδους της String για να κάνεις αυτό που θες, όπως π.χ. την String.Replace ή τις String.Split, String.Join</description></item><item><title>String manipulation</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45994.aspx</link><pubDate>Wed, 05 Nov 2008 16:28:36 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45994</guid><dc:creator>kallileo</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45994.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=74&amp;PostID=45994</wfw:commentRss><description>&lt;P&gt;Εχοντας τον παρακατω κωδικα διαβαζω απο ενα αρχειο.&lt;/P&gt;&lt;P&gt; try&lt;BR&gt;            {&lt;BR&gt;                using (StreamReader sr = new StreamReader(label1.Text))&lt;BR&gt;                {&lt;BR&gt;                    string line;&lt;BR&gt;&lt;BR&gt;                    while ((line = sr.ReadLine()) != null)&lt;BR&gt;                    {&lt;/P&gt;&lt;P&gt;                        MessageBox.Show(line.ToString());&lt;BR&gt;&lt;BR&gt;                    }&lt;BR&gt;                }&lt;BR&gt;            }&lt;BR&gt; &lt;/P&gt;&lt;P&gt;Οι εγγραφές είναι της παρακάτω μορφής:&lt;/P&gt;&lt;P&gt;MELAMINH OXYA;8,00;;699,00;276,00;2,00;Back&lt;BR&gt;MELAMINH OXYA;8,00;;699,00;276,00;1,00;Back&lt;BR&gt;&lt;/P&gt;&lt;P&gt;Αυτο που με αποσχολεί είναι το πώς θα πρέπει να προχωρήσω μετά ώστε να κάνω κάποιες αλλαγές στο string που θα ήταν ας πούμε αφαίρεση του delimiter και των μηδενικών, πρόσθεση whitespace και λοιπά...&lt;/P&gt;&lt;P&gt;Θα πρέπει να το διασπάσω σε κομμάτια όπως θα έκανα στη C .....π.χ fscanf(fr,"%[^;];%d;%d;%d;%d;%s",&amp;amp;material,&amp;amp;depth,&amp;amp;l,&amp;amp;w,&amp;amp;q,&amp;amp;code); ή καλύτερα να επεξεργαστώ όπως είναι το string line?&lt;/P&gt;&lt;P&gt;Θέλω να βγάλω περίπου κάτι τέτοιο...&lt;/P&gt;&lt;P&gt;__MELAMINH OXYA080       2225 6990 2760    10Back&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;BR&gt;&lt;/P&gt;&lt;BR&gt;</description></item></channel></rss>