PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [C#] Bestimmte Zeile in Textdatei ersetzen



cocacola
14.06.2009, 09:08
Hi!
Ich möchte eine bestimmte Zeile (Zeilennummer ist bekannt) in einer Textdatei ersetzen. Wie stelle ich das an? Wäre dankbar für ein kleines CodeBeispiel!
Danke
cocacola

Kolabi
14.06.2009, 09:47
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();
}
}

cocacola
14.06.2009, 10:07
Danke! Habs hingekriegt!