C# Text Dokument erstellen

24Antworten
  1. #1
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard C# Text Dokument erstellen

    Hi
    Ich Lerhne gerade programmieren und arbeite zur zeit mit C#
    Ich wollte eine Consolenanwendung schreiben die wie der Editor
    funktioniert. Also starten, schreiben, speichern und ende.
    Dann soll ein txt dokument erscheinen
    mein programm macht alles, außer SPEICHERN.

    using System;
    public class Text
    {
    public static void Main()

    string b;
    {
    textloop: ;
    b = Console.ReadLine();
    if (b == "ende")
    { goto end; }
    goto textloop;
    end: ;
    }
    }

    Das ist aus dem Internet:


    void CSharp_Datei_schreiben()
    {
    StreamWriter myWriter = File.CreateText(@"c:\text.txt");
    myWriter.WriteLine("Zeile1");
    myWriter.WriteLine("Zeile2");
    myWriter.Close();
    }
    Das kann aber nur starten, speichern und ende. Scheiben kann ich nicht

  2. #2
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Du machst alle falsch, was man falsch machen kann.

    Lernst du Programmieren als Hobby oder als Teil deiner Ausbildung? Warum verwendest du C#?

  3. #3
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Nicht so freundlich

    hab´s schlecht rausgeschnitten


    Beantwortest du auch meine Frage ??
    Name xy
    passwort wert
    ich habe mich nur beeilt ich mache nicht "alle falsch" wie du meinst
    Angehängte Dateien Angehängte Dateien

  4. #4
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Zitat Zitat von help-me
    Nicht so freundlich
    Es ist aber so. Was mir z.B. sofort auffällt ist, dass du keine Einrückungen verwendest, sondern alles an den linken Rand schreibst. Damit ist das Programm nur sehr schwer zu lesen, weil man die logischen Einrücken von Schleifen und Bedingungen nicht erkennt. Dann benutzt du den Befehl goto. Damit werden Programme total unübersichtlich. Man spricht dann von Spaghetticode, weil man keinen Anfang und kein Ende erkennen kann. Wenn dann die Frage kommt, warum es denn überhaupt existiert, antworte ich gerne mit dieser Metapher: Ein Kampfjet hat einen Schleudersitz, aber man sollte ihn nicht immer verwenden .
    Und deine Variablen haben keine sprechenden Namen - d.h. man muss sich immer wieder ins Gedächtnis rufen, was nun in dieser Variable gespeichert ist.

    Zitat Zitat von help-me
    Name xy
    passwort wert
    Ich benutze Linux - d.h. ich kann nichts mit deiner *.exe-Datei anfangen. Außerdem startet man nicht einfach so Programme, bei denen man nicht sicher ist, dass sie ungefährlich sind. Und es bringt mir rein gar nichts das Programm arbeiten zu sehen, weil ich den Quelltext benötige, um den Ablauf zu verstehen - und Reverse-Engineering ist mir zu aufwändig.

    Zitat Zitat von help-me
    ich habe mich nur beeilt ich mache nicht "alle falsch" wie du meinst
    Man sollte seine Programme bzw. Programmschnipsel immer ordentlich schreiben. Auch wenn es nur drei Zeilen sind, wenn man jmd. etwas kurz zeigen möchte.

    Zitat Zitat von help-me
    Beantwortest du auch meine Frage ??
    Ich habe kein Mono installiert (C#-Laufzeitumgebung unter Linux), aber dieses Programm sollte funktionieren:
    Code:
    using System;
    using System.IO;
    namespace Console_Editor
    {
        class Program
        {
            static void Main()
            {
                string user_input = "";
                StreamWriter Console_Editor_Output = new StreamWriter("Console_Editor_Output.txt");
                while (user_input != "Ende")
                {
                    user_input = Console.ReadLine();
                    Console_Editor_Output.WriteLine(user_input);
                }
                Console_Editor_Output.Close();
            }
        }
    }

  5. #5
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Lernst du Programmieren als Hobby oder als Teil deiner Ausbildung? Warum verwendest du C#?
    Ich mache es als hobby, und zwar seit gestern mittag.
    Ich will es mal beruflich machrn aber mit 15 J. bestimmt noch nicht.
    Außerdem startet man nicht einfach so Programme, bei denen man nicht sicher ist, dass sie ungefährlich sind
    Sorry ich wusste nicht das ich gefärlich bin

    Man sollte seine Programme bzw. Programmschnipsel immer ordentlich schreiben. Auch wenn es nur drei Zeilen sind, wenn man jmd. etwas kurz zeigen möchte.
    Wie gesagt, ohne scheiß, ich mache es erst seit gestern mittag den 5-12-2010 und im meinen alter darf man wohl noch unsicher sein!!

    Und es bringt mir rein gar nichts das Programm arbeiten zu sehen, weil ich den Quelltext benötige, um den Ablauf zu verstehen - und Reverse-Engineering ist mir zu aufwändig.
    Hir aber das forum quetscht alles an die seite

    using System;
    public class Consolen_Test

    {
    public static void Main()
    {
    int i;
    i = 0;
    string Name, pw, apw, a, pwn, pwn2, b;

    Console.WriteLine("Entwickler: help-me ");
    Console.WriteLine("Produkt: Consolen_Test (© 2010-2012) ");
    Console.WriteLine("Version: 1.0.5");
    Console.WriteLine("");
    start: ;
    Console.Write("Bitte geben Sie Ihren Namen ein: ");
    Name = Console.ReadLine();

    if (Name != "xy")
    {
    Console.WriteLine("Kein zutritt für Unbefugte !!");
    Console.ReadLine();
    goto end;
    }

    if (Name == "xy")
    {
    Console.WriteLine("Hallo " + Name);
    Console.Write("Passwort Bitte: ");
    pw = "wert";

    pass: ;
    apw = Console.ReadLine();

    if (apw != pw)
    {
    i++;
    if (i == 3)
    { goto passexit; }
    Console.Write("Passwort ist Falsch! Versuche es ereut: ");
    passexit: ;
    if (i == 3)
    {
    Console.Write("");
    Console.Write("Zu viele Fehlversuche! Das Programm wird beendet: ");
    Console.ReadLine();
    goto end;
    }
    goto pass;
    }

    if (apw == pw)
    {
    Console.WriteLine();
    Console.WriteLine("Passwort korrekt");
    Console.WriteLine();
    menü: ;
    Console.WriteLine("...Herzlich wilkommen im Hauptmenü... Schreibe help für Hilfe");
    menü2: ;
    Console.WriteLine();
    Console.Write("Was willst du machen? ");
    a = Console.ReadLine();
    Console.WriteLine();
    if (a == "help")
    {
    Console.WriteLine("");
    Console.WriteLine("Befehlliste: exit = Ende");
    Console.WriteLine(" abmelden = Zurück zum start");
    Console.WriteLine(" pw ändern = Passwort ändern");
    Console.WriteLine(" text = Schreibe einen Text (mit `ende´ beendest du den Modus)");
    goto menü2;
    }

    if (a == "exit")
    goto end;
    if (a == "text")
    {
    textloop: ;
    b = Console.ReadLine();
    if (b == "ende")
    { goto menü2; }
    goto textloop;
    }
    if (a == "abmelden")
    goto start;
    if (a == "pw ändern")
    {
    passn: ;
    Console.Write("Neues Passwort: ");
    pwn = Console.ReadLine();
    Console.WriteLine();
    if (pwn == "menü")
    { goto menü; }

    Console.Write("Neues Passwort wiederholen: ");
    pwn2 = Console.ReadLine();
    if (pwn == pwn2)
    {
    Console.WriteLine("Neues Passwort gespeichert");
    goto end;
    }


    if (pwn != pwn2)
    Console.WriteLine("Die Passwortabfrage stimmt nicht überein! Versuche es erneut oder schreibe `menü´um ins Hauptmenü zu gelangen");
    goto passn;
    }
    Console.WriteLine("Ungültiger befehl!");
    goto menü2;
    }


    }



    end: ;
    }




    }

  6. #6
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Ich habe kein Mono installiert (C#-Laufzeitumgebung unter Linux), aber dieses Programm sollte funktionieren:
    Code:

    using System;
    using System.IO;

    namespace Console_Editor
    {
    class Program
    {
    static void Main()
    {
    string user_input = "";
    StreamWriter Console_Editor_Output = new StreamWriter("Console_Editor_Output.txt");
    while (user_input != "Ende")
    {
    user_input = Console.ReadLine();
    Console_Editor_Output.WriteLine(user_input);
    }
    Console_Editor_Output.Close();
    }
    }
    }
    Wo landet das dokument??

  7. #7
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Zitat Zitat von help-me
    Ich mache es als hobby, und zwar seit gestern mittag.
    Ich will es mal beruflich machrn aber mit 15 J. bestimmt noch nicht.
    Das hört man doch gerne . Dann wünsche ich dir viel Erfolg.

    Zitat Zitat von help-me
    Sorry ich wusste nicht das ich gefärlich bin
    Das ist eine ganz simple Sache aus der Computersicherheit und hat nichts mit dir zu tun. Es ist alle böse - nur wenn man beweisen kann, dass es nicht böse ist, dann ist es gut. Und man klickt nur gute Sachen an. Wenn man so mit dem Computer arbeitet, hat man fast keine Probleme mit Schadsoftware.

    Zitat Zitat von help-me
    Wie gesagt, ohne scheiß, ich mache es erst seit gestern mittag den 5-12-2010 und im meinen alter darf man wohl noch unsicher sein!!
    Das habe ich beides nicht gewusst und ich habe es auch in keiner Form böse gemeint. Bloß ist es in einem Forum nicht einfach die Absicht nur mit Buchstaben auszudrücken. Ich kann hier keine Gestik und Mimik verwenden .
    Sieh das einfach als Tipp, denk darüber nach und bringe es eventuell in deine Programmierpraxis mit ein. Damit bleiben die Programme übersichtlich und du kannst besser verstehen, was darin abläuft und wo die Fehler liegen.

    Zitat Zitat von help-me
    Hir aber das forum quetscht alles an die seite
    Es gibt extra einen Button für Codes. Der fügt den [code]-BBCode ein. Und dann werden die Einrückungen mit übernommen, wie du das oben in meinem Beitrag sehen kannst.

  8. #8
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Danke für die Tipps
    Ich kann hier keine Gestik und Mimik verwenden
    Kann mann laut sagen

    ich wede es versuchen

    Im internet gibt es leider nicht viele infos aber ich brauche mehr
    und Bill Gates habe ich auch nicht in der Nachtbarschaft

    Wo landet das dokument??
    Kannst du mir das vielleicht noch sagen?

  9. #9
    Avatar von Fabi
    Fabi ist offline

    Title
    Moderator
    seit
    20.10.2006
    Ort
    Hessen
    Beiträge
    8.272

    Standard

    Nur mal so als Frage:
    Hast du schon mit anderen Programmiersprachen Erfahrungen gemacht?

  10. #10
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Zitat Zitat von help-me
    Wo landet das dokument??
    Das müsste im gleichen Ordner sein, wie die *.exe-Datei.

    Zitat Zitat von help-me
    Im internet gibt es leider nicht viele infos aber ich brauche mehr und Bill Gates habe ich auch nicht in der Nachtbarschaft
    Schau mal in einer Bibliothek oder Buchhandlung nach Büchern zu C#. Wenn es geht einfach mal den Anfang lesen, um zu schauen, ob du mit dem Autor klar kommst. Auch wenn diese Methode nicht Hightech ist, vermittelt sie alles an einem Ort und in einer logischen Reihenfolge.
    Bill Gates hat eher Software von anderen Leuten genommen, etwas umgeschrieben und als seine ausgegeben. Hinter dem Erfolg steckt wesentlich mehr Geschäftssinn als Programmierleistung.

    Zitat Zitat von help-me
    Zitat Zitat von Spyx
    Ich kann hier keine Gestik und Mimik verwenden .
    Kann mann laut sagen
    Daran muss man sich gewöhnen, wenn man im Text-basierten Internet unterwegs ist (z.B. Foren, Newsboards, Blogs, Mailinglisten, etc.). Oftmals hat man nur die Emoticons (Smileys) zur Verfügung oder nur ein paar "nerdige" Textstücke, wie z.B. </ironie> (womit man andeutet, dass der Absatz davor ironisch gemeint ist).
    Und wenn doch mal irgendwas böse gemeint ist, sollte man einfach darüber hinwegschauen. Es lohnt sich einfach nicht, wenn man sich über irgendwelche Leute aufregt.

    Edit:
    Zitat Zitat von Fabi
    Hast du schon mit anderen Programmiersprachen Erfahrungen gemacht?
    Nein, wenn er jemals ein größeres Stück Software geschrieben hätte, wäre ihm sehr schnell aufgefallen, dass man goto am besten gleich wieder vergisst.

  11. #11
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Fabi
    Nur mal so als Frage:
    Hast du schon mit anderen Programmiersprachen Erfahrungen gemacht?
    Ein wenig c++, batch und vbs aber nur anfänger zeug

  12. #12
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    HI!
    Ich hab dein programm ausprobiert Spyx
    aber da gibt´s bei mir nen problem, schreiben kann ich, beenden tut es auch, genauso wie erstellen, aber da steht nicht´s drinn im dokument

  13. #13
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    OK, dann versuche es mal mit diesem Codeschnipsel:
    Code:
    using System;
    using System.IO;
    namespace Console_Editor
    {
        class Program
        {
            static void Main()
            {
                string user_input = "";
                FileStream Editor_File = new FileStream("Console_Editor_Output.txt", FileMode.Create);
                StreamWriter Console_Editor_Output = new StreamWriter(Editor_File);
                while (user_input != "Ende")
                {
                    user_input = Console.ReadLine();
                    Console_Editor_Output.WriteLine(user_input);
                }
                Console_Editor_Output.Close();
                Editor_File.Close();
            }
        }
    }

  14. #14
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Es geht jetzt
    Danke ‼‼‼

  15. #15
    Avatar von Smeagol
    Smeagol ist offline

    Title
    Benutzer
    seit
    08.07.2009
    Ort
    Augsburg
    Beiträge
    267

    Standard

    Zitat Zitat von Spyx
    Hinter dem Erfolg steckt wesentlich mehr Geschäftssinn als Programmierleistung.
    Jaja, wie immer alle meine das Bill Gates nicht Programmieren konnte/kann.

    Bill Gates ? Wikipedia

    [...]Bill Gates beschäftigte sich nachfolgend mit verschiedenen Programmiersprachen, um an dem System arbeiten zu können. Dabei handelte es sich neben BASIC auch um FORTRAN, LISP und die Maschinensprache.[...]
    [...]Im Dezember 1974 entwickelte er zusammen mit Allen innerhalb weniger Wochen einen BASIC-Interpreter [...]
    Was allein schon mal viel aussagt. Bill Gates hat selbst einen Basic Interpreter geschrieben, der sich heute Visual Basic nennt. Bill Gates war nicht allein der Kopf der für den Erfolg von MS beigetragen hat, immerhin gab und gibt es ja noch Steve Ballmer der nicht weniger entscheidend war und ist. Dieser hatte auch mmn den Geschäftssinn.

    Naja soviel dazu.

    Kleine Frage an Spyx: Hast du das "Programm" (Sorry aber Programm ist einfach übertrieben für die paar Code Zeilen) im Texteditor geschrieben?

    Wenn ja Respekt! Ohne Syntax-Highlighting und Intelli-Sens so einige Objekte von C# Auswendig zu wissen ist echt nicht schlecht

    LG
    Smeagol

    Edit: @help-me

    Schau dir doch mal wenn du Lust hast mehr C# zu lernen die Open-Books von Galileo Computing an. Die sind meiner Meinung nach recht gut und vor allem Kostenlos.
    z.B. Visual C# 2010

  16. #16
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Zitat Zitat von Smeagol
    Jaja, wie immer alle meine das Bill Gates nicht Programmieren konnte/kann.
    Ich habe nie gesagt, dass Bill Gates nicht Programmieren kann. Ich habe nur gesagt, dass sein Geschäftssinn für den Erfolg von Microsoft wichtiger war als seine Programmierleistungen.

    Zitat Zitat von Smeagol
    immerhin gab und gibt es ja noch Steve Ballmer der nicht weniger entscheidend war und ist. Dieser hatte auch mmn den Geschäftssinn.
    Das kann ich nicht sagen. Der "Durchbruch" kam ja, als IBM Microsoft den Zuschlag für das Betriebssystem gegeben hat. Da war Steve Ballmer schon mit an Board.

    Zuvor hat Microsoft aber auch schon mit Altair- bzw. Microsoft-Basic eine Menge Geld gemacht:
    8-Bit-Nirvana: Microsoft

    Zitat Zitat von Smeagol
    Kleine Frage an Spyx: Hast du das "Programm" (Sorry aber Programm ist einfach übertrieben für die paar Code Zeilen) im Texteditor geschrieben?

    Wenn ja Respekt! Ohne Syntax-Highlighting und Intelli-Sens so einige Objekte von C# Auswendig zu wissen ist echt nicht schlecht
    Ich habe keine Ahnung von C# und habe für den Codeschnipsel nur den Editor hier im Forum verwendet.

  17. #17
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard Smile ;-)

    Ist doch egal
    Wenn ihr so wetteifert, könnt ihr mir ja verraten, wass ich jetzt machen muss.
    Un zwar such ich schon wieder über all in internet nach nem script für time-buffer. Ich will nämlich das ein befehl ausgeführt wirt und erst x belibig
    viele sekunden später der nächste
    Wie get dat

  18. #18
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Das scheint in C# gar nicht so einfach zu gehen. Dafür musst du mit Threading arbeiten - mehreren Prozessen gleichzeitig.

    Mach lieber erst einmal etwas anderes.

  19. #19
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Ok
    Schade mit Bat. datein get´s gans einfach

  20. #20
    Avatar von Fabi
    Fabi ist offline

    Title
    Moderator
    seit
    20.10.2006
    Ort
    Hessen
    Beiträge
    8.272

    Standard

    Lösung eines Kumpels dazu:

    Wie Spyx schon richtig gesagt hat, hat dies etwas mit Threading zu tun. Es ist allerdings relativ einfach. Du musst zuerst den Namespace "System.Threading" einbinden. Dies erledigst du mit "using System.Threading;" Der Befehl "Thread.Sleep(300);" unterbricht den Ablauf deines Programms (aktuellen Threads) für die angegebene Zeit (hier 300ms).

  21. #21
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Argh, das kommt davon, wenn man schon wieder zwei Gedanken weiter ist.

  22. #22
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Danke !!

  23. #23
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard Noch ne Frage

    Ich hab meine Console mit diesem* Script maximirt

    *
    Console.WindowLeft = Console.WindowTop = 0;

    Console.WindowHeight = Console.BufferHeight = Console.LargestWindowHeight;

    Console.WindowWidth = Console.BufferWidth = Console.LargestWindowWidth;
    Mit welchem Befehl bekomme ich das Bild wider klein?

  24. #24
    Avatar von Q-Max
    Q-Max ist offline

    Title
    Moderator
    seit
    19.05.2008
    Ort
    Laatzen bei Hannover
    Beiträge
    11.775

  25. #25
    Avatar von help-me
    help-me ist offline
    Themen Starter

    Title
    Benutzer
    seit
    06.12.2010
    Beiträge
    16

    Standard

    Geht bei mir aber irgentwie nicht

Ähnliche Themen

  1. Word Dokument druckt nicht

    Von mtownler im Forum Office und Dokumente
    Antworten: 2
    Letzter Beitrag: 04.07.2013, 12:46
  2. PDF zu einem Dokument zusammenführen

    Von Medifun im Forum Office und Dokumente
    Antworten: 3
    Letzter Beitrag: 13.03.2012, 10:45
  3. Word-Dokument schützen

    Von CrownSapher im Forum Antivirus und PC Sicherheit
    Antworten: 8
    Letzter Beitrag: 09.09.2011, 14:31
  4. html und text oder nur text..

    Von distel.hf im Forum Webbrowser und Kommunikation
    Antworten: 3
    Letzter Beitrag: 25.10.2008, 17:25
  5. pdf. Dokument mit Felder zum Schreiben ??

    Von Mick im Forum Office und Dokumente
    Antworten: 22
    Letzter Beitrag: 05.10.2007, 10:53
Diese Seite benutzt Cookies Durch die weitere Nutzung der Seite stimmen Sie der Verwendung von Cookies zu. Infos zum Datenschutz