C-Sharp in txt schreiben und daraus lesen
Hi.
Ich will eine TXT Datei einlesen, doch ich hab ein Problem.
Mein Code:
Klasse: TextDatei
Form: Form1
Er sagt immer, dass er C_textdatei nciht kennt
Was ist falsch?
LG
Ich will eine TXT Datei einlesen, doch ich hab ein Problem.
Mein Code:
Klasse: TextDatei
using System;
using System.IO;
class TextDatei
{
///<summary>
/// Liefert den Inhalt der Datei zurück.
///</summary>
///<param name="sFilename">Dateipfad</param>
public string ReadFile(String sFilename)
{
string sContent = "";
if (File.Exists(sFilename))
{
StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default);
sContent = myFile.ReadToEnd();
myFile.Close();
}
return sContent;
}
///<summary>
/// Schreibt den übergebenen Inhalt in eine Textdatei.
///</summary>
///<param name="sFilename">Pfad zur Datei</param>
///<param name="sLines">zu schreibender Text</param>
public void WriteFile(String sFilename, String sLines)
{
StreamWriter myFile = new StreamWriter(sFilename);
myFile.Write(sLines);
myFile.Close();
}
///<summary>
/// Fügt den übergebenen Text an das Ende einer Textdatei an.
///</summary>
///<param name="sFilename">Pfad zur Datei</param>
///<param name="sLines">anzufügender Text</param>
public void Append(string sFilename, string sLines)
{
StreamWriter myFile = new StreamWriter(sFilename, true);
myFile.Write(sLines);
myFile.Close();
}
///<summary>
/// Liefert den Inhalt der übergebenen Zeilennummer zurück.
///</summary>
///<param name="sFilename">Pfad zur Datei</param>
///<param name="iLine">Zeilennummer</param>
public string ReadLine(String sFilename, int iLine)
{
string sContent = "";
float fRow = 0;
if (File.Exists(sFilename))
{
StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default);
while (!myFile.EndOfStream && fRow < iLine)
{
fRow++;
sContent = myFile.ReadLine();
}
myFile.Close();
if (fRow < iLine)
sContent = "";
}
return sContent;
}
/// <summary>
/// Schreibt den übergebenen Text in eine definierte Zeile.
///</summary>
///<param name="sFilename">Pfad zur Datei</param>
///<param name="iLine">Zeilennummer</param>
///<param name="sLines">Text für die übergebene Zeile</param>
///<param name="bReplace">Text in dieser Zeile überschreiben (t) oder einfügen (f)</param>
public void WriteLine(String sFilename, int iLine, string sLines, bool bReplace)
{
string sContent = "";
string delimiterstring = { "\r\n" };
if (File.Exists(sFilename))
{
StreamReader myFile = new StreamReader(sFilename, System.Text.Encoding.Default);
sContent = myFile.ReadToEnd();
myFile.Close();
}
string sCols = sContent.Split(delimiterstring, StringSplitOptions.None);
if (sCols.Length >= iLine)
{
if (!bReplace)
sCols[iLine - 1] = sLines + "\r\n" + sCols[iLine - 1];
else
sCols[iLine - 1] = sLines;
sContent = "";
for (int x = 0; x < sCols.Length - 1; x++)
{
sContent += sCols[x] + "\r\n";
}
sContent += sCols[sCols.Length - 1];
}
else
{
for (int x = 0; x < iLine - sCols.Length; x++)
sContent += "\r\n";
sContent += sLines;
}
StreamWriter mySaveFile = new StreamWriter(sFilename);
mySaveFile.Write(sContent);
mySaveFile.Close();
}
}
Form: Form1
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
TextDatei c_textdatei = new TextDatei();
}
private void timeResync_Tick(object sender, EventArgs e)
{
//Einlesen einer Datei
string fs = c_textdatei.ReadFile(@"c:\text.txt");
}
}
Er sagt immer, dass er C_textdatei nciht kennt
Was ist falsch?
LG
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 172018
Url: https://administrator.de/contentid/172018
Ausgedruckt am: 22.11.2024 um 07:11 Uhr
6 Kommentare
Neuester Kommentar
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
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