Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

C-Sharp in txt schreiben und daraus lesen

Frage Entwicklung C und C++

Mitglied: cewiethemaster

cewiethemaster (Level 2) - Jetzt verbinden

24.08.2011 um 20:06 Uhr, 3695 Aufrufe, 6 Kommentare

Hi.

Ich will eine TXT Datei einlesen, doch ich hab ein Problem.

Mein Code:


Klasse: TextDatei
01.
using System; 
02.
using System.IO; 
03.
 
04.
class TextDatei 
05.
06.
    ///<summary> 
07.
    /// Liefert den Inhalt der Datei zurück. 
08.
    ///</summary> 
09.
    ///<param name="sFilename">Dateipfad</param> 
10.
    public string ReadFile(String sFilename) 
11.
12.
        string sContent = ""; 
13.
 
14.
        if (File.Exists(sFilename)) 
15.
16.
            StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default); 
17.
            sContent = myFile.ReadToEnd(); 
18.
            myFile.Close(); 
19.
20.
        return sContent; 
21.
22.
 
23.
    ///<summary> 
24.
    /// Schreibt den übergebenen Inhalt in eine Textdatei. 
25.
    ///</summary> 
26.
    ///<param name="sFilename">Pfad zur Datei</param> 
27.
    ///<param name="sLines">zu schreibender Text</param> 
28.
    public void WriteFile(String sFilename, String sLines) 
29.
30.
        StreamWriter myFile = new StreamWriter(sFilename); 
31.
        myFile.Write(sLines); 
32.
        myFile.Close(); 
33.
34.
 
35.
    ///<summary> 
36.
    /// Fügt den übergebenen Text an das Ende einer Textdatei an. 
37.
    ///</summary> 
38.
    ///<param name="sFilename">Pfad zur Datei</param> 
39.
    ///<param name="sLines">anzufügender Text</param> 
40.
    public void Append(string sFilename, string sLines) 
41.
42.
        StreamWriter myFile = new StreamWriter(sFilename, true); 
43.
        myFile.Write(sLines); 
44.
        myFile.Close(); 
45.
46.
 
47.
    ///<summary> 
48.
    /// Liefert den Inhalt der übergebenen Zeilennummer zurück. 
49.
    ///</summary> 
50.
    ///<param name="sFilename">Pfad zur Datei</param> 
51.
    ///<param name="iLine">Zeilennummer</param> 
52.
    public string ReadLine(String sFilename, int iLine) 
53.
54.
        string sContent = ""; 
55.
        float fRow = 0; 
56.
        if (File.Exists(sFilename)) 
57.
58.
            StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default); 
59.
            while (!myFile.EndOfStream && fRow < iLine) 
60.
61.
                fRow++; 
62.
                sContent = myFile.ReadLine(); 
63.
64.
            myFile.Close(); 
65.
            if (fRow < iLine) 
66.
                sContent = ""; 
67.
68.
        return sContent; 
69.
70.
 
71.
    /// <summary> 
72.
    /// Schreibt den übergebenen Text in eine definierte Zeile. 
73.
    ///</summary> 
74.
    ///<param name="sFilename">Pfad zur Datei</param> 
75.
    ///<param name="iLine">Zeilennummer</param> 
76.
    ///<param name="sLines">Text für die übergebene Zeile</param> 
77.
    ///<param name="bReplace">Text in dieser Zeile überschreiben (t) oder einfügen (f)</param> 
78.
    public void WriteLine(String sFilename, int iLine, string sLines, bool bReplace) 
79.
80.
        string sContent = ""; 
81.
        string[] delimiterstring = { "\r\n" }; 
82.
 
83.
        if (File.Exists(sFilename)) 
84.
85.
            StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default); 
86.
            sContent = myFile.ReadToEnd(); 
87.
            myFile.Close(); 
88.
89.
 
90.
        string[] sCols = sContent.Split(delimiterstring, StringSplitOptions.None); 
91.
 
92.
        if (sCols.Length >= iLine) 
93.
94.
            if (!bReplace) 
95.
                sCols[iLine - 1] = sLines + "\r\n" + sCols[iLine - 1]; 
96.
            else 
97.
                sCols[iLine - 1] = sLines; 
98.
 
99.
            sContent = ""; 
100.
            for (int x = 0; x < sCols.Length - 1; x++) 
101.
102.
                sContent += sCols[x] + "\r\n"; 
103.
104.
            sContent += sCols[sCols.Length - 1]; 
105.
 
106.
107.
        else 
108.
109.
            for (int x = 0; x < iLine - sCols.Length; x++) 
110.
                sContent += "\r\n"; 
111.
 
112.
            sContent += sLines; 
113.
114.
 
115.
 
116.
        StreamWriter mySaveFile = new StreamWriter(sFilename); 
117.
        mySaveFile.Write(sContent); 
118.
        mySaveFile.Close(); 
119.
120.
}
Form: Form1
01.
public partial class Form1 : Form 
02.
03.
 
04.
 
05.
       public Form1() 
06.
07.
            InitializeComponent(); 
08.
09.
 
10.
       private void Form1_Load(object sender, EventArgs e) 
11.
12.
           TextDatei c_textdatei = new TextDatei(); 
13.
14.
 
15.
       private void timeResync_Tick(object sender, EventArgs e) 
16.
17.
           //Einlesen einer Datei 
18.
           string fs = c_textdatei.ReadFile(@"c:\text.txt"); 
19.
20.
    }
Er sagt immer, dass er C_textdatei nciht kennt

Was ist falsch?

LG
Mitglied: Berrnd
24.08.2011 um 21:38 Uhr
Hi,

na wenn du dem Compiler nicht sagst wer c_textdatei ist, dann weiß er das auch nicht. ;)

Ich denke mal c_textdatei sollte ein Objekt deiner Klasse TextDatei sein? Also einfach an entsprechender Stelle ein
TextDatei c_textdatei = new TextDatei();
Gruß - Bernd
Bitte warten ..
Mitglied: cewiethemaster
24.08.2011 um 22:00 Uhr
Hi.

ich hab doch in Form1 schon

01.
private void Form1_Load(object sender, EventArgs e)  
02.
11. 
03.
       {  
04.
12. 
05.
           TextDatei c_textdatei = new TextDatei();  
06.
13. 
07.
       } 
Bitte warten ..
Mitglied: 1002-btl
24.08.2011 um 22:31 Uhr
Hallo,

liegen beide Ausschnitte des Quellcodes im selben Namespace?
Im Quellcode, den Du gepostet hast, ist das nicht sicher erkennbar.

Gruß
Bitte warten ..
Mitglied: cewiethemaster
24.08.2011 um 22:33 Uhr
Ja, in Form1 liegen beide im selben namSpace...
Bitte warten ..
Mitglied: noxcry
25.08.2011 um 00:38 Uhr
Also wenn du in "private void timeResync_Tick" aus einem Objekt lesen willst, dass du in einer anderen Methode erstellt hast, dann ist es klar, dass es nicht geht.
Entweder du übergibtst der "private void timeResync_Tick" die in "Form1_Load" erstellte c_textdatei, oder du definierst das Objekt TextDatei als Membervariable, weißt sie in "Form1_Load" zu und kannst sie somit dann aus "private void timeResync_Tick" lesen.
lg
nox
Bitte warten ..
Mitglied: cewiethemaster
25.08.2011 um 08:00 Uhr
Hi.

Danke es funtkiniert ;)

Nun hab ich ein weiteres Problem.

Ich will jetzt mittels

01.
private void cmdSubmit_Click(object sender, EventArgs e) 
02.
03.
           //Text an eine Datei Anhängen 
04.
           TextDatei c_textdatei = new TextDatei(); 
05.
           c_textdatei.Append(@"C:\test.txt", + Environment.NewLine + txtMessage.Text); 
06.
       }
mit einem Zeilenumbruch einen Text an die datei anhängen.
Da meckert er allerdings:

Fehler 1 Der Operator "+" kann nicht auf einen Operanden vom Typ "string" angewendet werden.

und verweißt auf + Environment.NewLine

Was kann ich da machen?


EDIT: Ich habs jetzt so gelöst

01.
private void cmdSubmit_Click(object sender, EventArgs e) 
02.
03.
           //Text an eine Datei Anhängen 
04.
           TextDatei c_textdatei = new TextDatei(); 
05.
           string text = Environment.NewLine + txtMessage.Text; 
06.
           c_textdatei.Append(@"C:\test.txt", text); 
07.
       }
Bitte warten ..
Ähnliche Inhalte
Visual Studio
C-Sharp - Schreiben in die Zwischenablage
gelöst Frage von rana-mpVisual Studio3 Kommentare

Hallo zusammen, ich habe ein Problem, was fuer mich als relativ unerfahrenen Programmierer im Momoment unloesbar erscheint. Ein wenig ...

C und C++
C Sharp Auslesen was für eine TXT Datei im Ordner ist
Frage von DippsC und C++1 Kommentar

Hallo, ich habe ein Programm geschrieben wo die User die Outlook Signaur anpassen können zu unserem Unternehmen. Nun möchte ...

IDE & Editoren
IDE für C-Sharp und C++ auf Windows
gelöst Frage von BugdroidIDE & Editoren8 Kommentare

Hallo, Ich nutze derzeit Visual Studio, aber auf Dauer ist es mir etwas zu Ressourcenfressend und für meine Zwecke ...

C und C++
C Sharp XAML Universal
Frage von DippsC und C++3 Kommentare

Hallo ich versuche gerade mit C#2015 ein Projekt Universal XAML zu erstellen um auf einem Raberry PI 2 mit ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 17 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 21 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...