我在c#2005中創建了一個標記表程序,它的工作正常,它正在輸入並使用下面的代碼顯示輸出。現在如果我想這個程序的輸出也被複制到位於我的C或任何驅動器中的新文件中。我該怎麼辦?我試過IO.StreamWriter,但它不工作。將輸出寫入C#2005中的文件
using(System.IO.TextWriter writer = System.IO.File.CreateText(@"C:\1.txt"))
{
Console.WriteLine("\t\tMarksheet - Prislogix Public School");
Console.Write("\n\nStudent Name : " + name);
Console.Write("\nClass : " + cls);
Console.Write("\nRoll Number : " + roll);
Console.Write("\n\nSubject\t\tObtained Marks\t\tTotal Marks");
Console.Write("\n\nChemistry\t\t" + chem + "\t\t75");
Console.Write("\nEnglish\t\t\t" + eng + "\t\t100");
Console.Write("\nCalculus\t\t\t" + urd + "\t\t100");
Console.Write("\nDiscrete\t\t\t" + sin + "\t\t75");
Console.Write("\nMathematics\t\t" + mat + "\t\t100");
Console.Write("\nPhysics\t\t\t" + phy + "\t\t75");
Console.Write("\nComputer\t\t" + comp + "\t\t100");
Console.Write("\nMethods\t\t" + isl + "\t\t50");
float tot = chem + eng + urd + sin + mat + phy + comp + isl;
Console.Write("\n\n\t\t\tTotal Obtained Marks : " + tot + "\tOut Of 625");
float per;
per = (tot/625) * 100;
Console.Write("\n\t\t\tPercentage : " + per + "%");
if (per < 49 && per > 40)
{
Console.Write("\n\t\t\tFAILED!");
}
if (per <= 59 && per >= 50)
{
Console.Write("\n\t\t\tGrade : C");
}
if (per <= 69 && per >= 60)
{
Console.Write("\n\t\t\tGrade : B");
}
if (per <= 79 && per >= 70)
{
Console.Write("\n\t\t\tGrade : A");
}
if (per <= 89 && per >= 80)
{
Console.Write("\n\t\t\tGrade : A+");
}
if (per <= 100 && per >= 90)
{
Console.Write("\n\t\t\tGrade : A-ONE");
}
}
}
Console.ReadLine();
可能重複的[如何寫入文本文件](http://stackoverflow.com/questions/4138779/how-to-write-to-a-text-file) – Bobby 2011-05-06 10:15:10
你是什麼意思,它不是加工?有錯誤嗎?當你完成它時,你必須在作者身上調用'Close()',或者把它放到一個使用塊中。 – 2011-05-06 10:15:55
您發佈的代碼有一個關閉'}',沒有打開'{'。你可以在你說你嘗試使用'StreamWriter'的地方發佈代碼嗎? – 2011-05-06 10:16:29