Page 1 of 1

Πρόβλημα με C#

Posted: Wed Jan 12, 2011 9:54 pm
by atomo
Δεν μπορεί να διαβάσει ελληνικούς χαρακτήρες ; !!
Νομίζω ότι το πρόβλημα βρίσκεται εδώ

Code: Select all

Encoding.ASCII.GetString(buf, 0, counter);
Καμιά ιδέα ;

Re: Πρόβλημα με C#

Posted: Thu Jan 13, 2011 12:50 am
by netharis
Απεχθάνομαι και δεν ξέρω C#, αλλά το γεγονός οτι έχεις ASCII και περιμένεις να διαβάσεις ελληνικά δεν κολλάει :-)

Re: Πρόβλημα με C#

Posted: Thu Jan 13, 2011 2:17 pm
by Ισοβίτης
Φυσικά και μπορεί :-D.

Code: Select all

Encoding.UTF8 κλπ κλπ.
Αν και, αν διαβάζεις από αρχεία, συνήθως δεν χρειάζεται να ορίσεις encoding. Αν θέλεις, δώσε λίγο περισσότερο κώδικα.

Re: Πρόβλημα με C#

Posted: Thu Jan 13, 2011 10:22 pm
by atomo
Μετά από πολλές δοκιμές βρήκα ότι αυτό δουλεύει.

Code: Select all

Encoding.Default.GetString(buf, 0, counter);
Ευχαριστώ πάντως :)

Re: Πρόβλημα με C#

Posted: Fri Feb 25, 2011 2:20 pm
by ultimate_aektzis
Εχω το παρακατω κομματι κωδικα σε C#.Θελω να ανοιγει ενα παραθυρο κονσολας αλλα η εξοδος να φαινεται και στο παραθυρο αλλα και σε ενα αρχειο.Πως πρεπει να αλλαξω τις ρυθμισεις? :???:

Code: Select all

ProcessStartInfo ProcessInfo;
   Process Process;

   ProcessInfo = new ProcessStartInfo("konsole", "/C " + Command);//cmd.exe
   ProcessInfo.CreateNoWindow = false; 
   ProcessInfo.UseShellExecute = true;
   ProcessInfo.RedirectStandardOutput=false;
   Process = Process.Start(ProcessInfo);
   Process.WaitForExit(Timeout);		
P.S:Command και timeout ειναι παραμετροι της παραπανω συναρτησης.

Re: Πρόβλημα με C#

Posted: Fri Feb 25, 2011 7:10 pm
by netharis

Code: Select all

./app | tee file

Re: Πρόβλημα με C#

Posted: Sat Feb 26, 2011 2:19 am
by Ισοβίτης
ultimate_aektzis wrote:Εχω το παρακατω κομματι κωδικα σε C#.Θελω να ανοιγει ενα παραθυρο κονσολας αλλα η εξοδος να φαινεται και στο παραθυρο αλλα και σε ενα αρχειο.Πως πρεπει να αλλαξω τις ρυθμισεις? :???:

Code: Select all

ProcessStartInfo ProcessInfo;
   Process Process;

   ProcessInfo = new ProcessStartInfo("konsole", "/C " + Command);//cmd.exe
   ProcessInfo.CreateNoWindow = false; 
   ProcessInfo.UseShellExecute = true;
   ProcessInfo.RedirectStandardOutput=false;
   Process = Process.Start(ProcessInfo);
   Process.WaitForExit(Timeout);		
P.S:Command και timeout ειναι παραμετροι της παραπανω συναρτησης.

Code: Select all

using System.Diagnostics;

Code: Select all

ConsoleTraceListener consoleTrace = new ConsoleTraceListener(false);
TextWriterTraceListener fileTrace = new TextWriterTraceListener("output.txt"); // Φτιάξε αυτό το αρχείο στον Debug / Release folder.

Trace.Listeners.Add(consoleTrace);
Trace.Listeners.Add(fileTrace);
Trace.AutoFlush = true;

Trace.WriteLine("This is a line");

Re: Πρόβλημα με C#

Posted: Sat Feb 26, 2011 2:35 am
by netharis
Ισοβίτης wrote:
Spoiler: εμφάνιση/απόκρυψη
[quote="ultimate_aektzis"]Εχω το παρακατω κομματι κωδικα σε C#.Θελω να ανοιγει ενα παραθυρο κονσολας αλλα η εξοδος να φαινεται και στο παραθυρο αλλα και σε ενα αρχειο.Πως πρεπει να αλλαξω τις ρυθμισεις? :???: [code]ProcessStartInfo ProcessInfo; Process Process; ProcessInfo = new ProcessStartInfo("konsole", "/C " + Command);//cmd.exe ProcessInfo.CreateNoWindow = false; ProcessInfo.UseShellExecute = true; ProcessInfo.RedirectStandardOutput=false; Process = Process.Start(ProcessInfo); Process.WaitForExit(Timeout); [/code] P.S:Command και timeout ειναι παραμετροι της παραπανω συναρτησης.

Code: Select all

using System.Diagnostics;

Code: Select all

ConsoleTraceListener consoleTrace = new ConsoleTraceListener(false);
TextWriterTraceListener fileTrace = new TextWriterTraceListener("output.txt"); // Φτιάξε αυτό το αρχείο στον Debug / Release folder.

Trace.Listeners.Add(consoleTrace);
Trace.Listeners.Add(fileTrace);
Trace.AutoFlush = true;

Trace.WriteLine("This is a line");
[/spoiler][/quote]

Dude admit it. My solution is better :lol:

Re: Πρόβλημα με C#

Posted: Sat Feb 26, 2011 12:22 pm
by ultimate_aektzis
Thanks guys, νομιζω οτι του net ειναι καλυτερη.Βεβαια μου ηρθε φλασια πριν απο λιγο και εβγαλα ακρη και μονος μου. :-D

Re: Πρόβλημα με C#

Posted: Tue Apr 08, 2014 12:31 pm
by konapos
Καλησπέρα, είμαι νέος στην c# και φτιάχνω ένα προγραμματάκι με visual studio 2012. Θα ήθελα να μου πείτε πως μπορώ να φτιάξω ένα dialog box που να δίνω ένα string και να το περνάει σε μία λίστα. Δηλαδή το αντιστοιχο JOptionPane.showInputDialog("Give the name"); της java.

Ευχαριστώ εκ των προτέρων!

Re: Πρόβλημα με C#

Posted: Tue Apr 08, 2014 1:47 pm
by nachos
http://stackoverflow.com/questions/7883 ... in-c-sharp

Αν και γενικά το να φτιάξεις διαλόγους σε Windows Forms είναι τόσο εύκολο που θα μπορούσες κάλλιστα να το κάνεις from scratch για εξάσκηση :-D

Re: Πρόβλημα με C#

Posted: Thu May 08, 2014 8:38 am
by Polkiller13
έχω ένα πρόβλημα σχετικά με αποκοπή ενός symbol apo ένα string που δίνω σαν είσοδο και την μετατροπή αυτου του symbol σε char.Χρησιμοποιώ την εντολή:
char χ = Convert.ToChar(text.Substring(j, 0)); .
μου πετάει σφάλμα String must be only one char long.Πώς γίνεται να μου λέει κάτι τέτοιο την στιγμή που με επανάλληψη for παίρνω τα symbols ένα-ένα?

Re: Πρόβλημα με C#

Posted: Fri May 09, 2014 2:15 am
by apo225
Polkiller13 wrote:έχω ένα πρόβλημα σχετικά με αποκοπή ενός symbol apo ένα string που δίνω σαν είσοδο και την μετατροπή αυτου του symbol σε char.Χρησιμοποιώ την εντολή:
char χ = Convert.ToChar(text.Substring(j, 0)); .
μου πετάει σφάλμα String must be only one char long.Πώς γίνεται να μου λέει κάτι τέτοιο την στιγμή που με επανάλληψη for παίρνω τα symbols ένα-ένα?
Αν κατάλαβα καλά, το λάθος είναι στο text.Substring(j, 0). Το j συμβολίζει από πού θα "ξεκινήσει" να διαβάζει και το 0 πόσους χαρακτήρες θα διαβάσει. Άρα εσύ του λες να σου διαβάσει 0 χαρακτήρες. Το σωστό λοιπόν είναι το text.Substring(j, 1)!
Επίσης ένας ποιο εύκολος τρόπος είναι: char x = text[j];