[关闭]
@betasy 2014-12-01T07:07:33.000000Z 字数 740 阅读 1399

Csharp programming note

C# exception knowledge


1.使用FileStream读取文件字符时,读取到末尾发生System.OverflowException异常,提示“确保不会除零,值对于字符太大或太小”,代码如下

  1. static void Main(string[] args)
  2. {
  3. char chLine;
  4. FileStream aFile = new FileStream(@"C:\Users\betasyone\Desktop\testdata\regiontest.txt", FileMode.Open);
  5. System.IO.StreamReader file = new StreamReader(aFile);
  6. char[] charArray = new char[] { ' ' };
  7. FileStream bFile = new FileStream(@"C:\Users\betasyone\Desktop\testdata\modify.txt", FileMode.CreateNew);
  8. StreamWriter bFileWriter = new StreamWriter(bFile);
  9. chLine=Convert.ToChar( file.Read());
  10. int i = 0;
  11. while (true)
  12. {
  13. while (!Convert.ToString(chLine).Equals("\r\n"))
  14. {
  15. if (chLine == ' ')
  16. bFileWriter.Write("\r\n");
  17. else
  18. bFileWriter.Write(chLine);
  19. chLine = Convert.ToChar(file.Read());
  20. i++;
  21. }
  22. }

在程序运行到文档末尾时抛出异常。这里需要一个表示文末字符的条件语句作为判定。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注