我正在为考试练习C#编程,但我无法解决问题,这就是我要求你帮助的原因。
我有一个充满字符串的矩阵(50x50)(RGB代码)[它的名字:kep
]。
我试图将矩阵写入TXT文件,但它提供的线路数量少于应有的数量。
StreamWriter fajl = new StreamWriter(@"..\..\..\keretes.txt");
int ciklusok = 0;
for (int y = 0; pixelek > y; y++)
{
for (int x = 0; pixelek > x; x++)
{
fajl.WriteLine(kep[x, y]);
ciklusok++;
}
}
StreamWriter
将TXT“成功”写入,但它只有2412行(也是最后一行中的值已被拆分)。
ciklusok
变量给出2500(这是正确的数字)。
有谁知道为什么StreamWriter
没有正确写作?
答案 0 :(得分:1)
尝试在使用块中包装StreamWriter。因为,您不是在调用Close()
和Close()
- 关闭流,而是在内部执行 flush 操作。使用语句会自动调用Close()
方法。
Flush - 清除当前writer的所有缓冲区并导致任何缓冲区 缓冲的数据写入底层流。
using (StreamWriter fajl = new StreamWriter(@"..\..\..\keretes.txt"))
{
int ciklusok = 0;
for (int y = 0; pixelek > y; y++)
{
for (int x = 0; pixelek > x; x++)
{
fajl.WriteLine(kep[x, y]);
ciklusok++;
}
}
}