¿Alguien puede decir por qué los datos anteriores todavía se muestran al guardar datos usando StreamWriter
Estoy guardando datos en un nombre de archivo usando Stream Writer, pero si ejecuto el código por segunda vez, los mismos datos se agregan a los datos anteriores, pero me gustaría borrar los datos antiguos y escribir los datos
Los datos que debería tener en el archivo de texto deberían ser los siguientes
101 435435345 3445454541104021031A094101
52251 1 1 CCD1 110402110402 1111000020000001
6281110000251 00000000011 1 1 0111000020000001
822500000100111000020000000000010000000000001 111000020000001
9000001000001000000010011100002000000000001000000000000
Mi código de muestra
if (i == 0)
{
index++;
string m_strDate = DateTime.Now.ToString("yyyy/MM/dd");
m_strDate = m_strDate.Replace("/", "");
StrFilePath = "log" + m_strDate + index + ".txt";
}
using (StreamWriter sw = new StreamWriter(StrFilePath,true))
{
using (StreamReader sr = new StreamReader(new MemoryStream(System.Text.Encoding.ASCII.GetBytes(strLine))))
{
while (sr.Peek() >= 0)
{
strReadLine = sr.ReadLine();
if (strReadLine.StartsWith("1"))
{
if (i == 0)
{
strFileHeader = strReadLine;
sw.WriteLine(strFileHeader);
}
}
if (strReadLine.StartsWith("5"))
{
strBatchHeader = strReadLine;
if (i == 0)
{
Btchno = Convert.ToInt32(strBatchHeader.Substring(87, 7));
BatchCnt = Convert.ToInt16(Btchno);
}
if (i > 0)
{
BatchCnt++;
strBatchHeader = strBatchHeader.Substring(0, 87) + Convert.ToString(BatchCnt.ToString().PadLeft(7, (char)48));
}
sw.WriteLine(strBatchHeader);
}
}
}
}