所以问题是这个我声明变量并在方法的开头打开流:
int i = 0;
int FailedToCopyImages = 0;
int NumberOfCopiedImages = 0;
int PreviouslyCopiedImages = 0;
TextWriter tw = new StreamWriter(pathToFile, true);
然后我在try-catch-finally
块和`finally finally部分:
finally
{
Console.WriteLine(i);
Console.WriteLine(NumberOfCopiedImages);
Console.WriteLine(PreviouslyCopiedImages);
Console.WriteLine(FailedToCopyImages);
tw.WriteLine(" ");
tw.WriteLine("All images: " + i +
" | Successfully copied: " + NumberOfCopiedImages +
" | Previously copied: " + PreviouslyCopiedImages +
" | Failed To Copy: " + FailedToCopyImages);
tw.WriteLine("--------------End Of Material Images-------------");
我用四种方法做到这一点,并在那里得到了正确的结果。在控制台中我看到变量保存正确的值,但在txt文件中我得到零(0)。
答案 0 :(得分:0)
在大多数情况下,您需要在查看文件结果之前调用tw.Flush()
和tw.Close()
(或只在new StreamWriter(..)
语句中包装using (...)
)。
即使它似乎开始使用其他文件路径(正如你所评论的那样) - 没有魔法(至少在编程中) - 如果没有合适的Flush
/ {{1 }}