如何在打开文件时验证文件?

时间:2009-10-28 17:34:40

标签: file-io

假设用户在对话框中选择文件,然后应用程序打开文件进行阅读等。用户可以打开“不正确”的文件 - 例如,他们可以选择二进制文件,即使文件是'应该选择是一个文本文件。

我认识到有时不正确的文件类型会产生可以处理的异常。但有时文件不会创建异常;相反,它们只会导致应用程序无法正常工作。

为这些情况编码的标准方法是什么?

2 个答案:

答案 0 :(得分:1)

许多操作系统通过提供至少在某种程度上支持文件类型的文件系统API来帮助您解决这个问题(在Cocoa for Mac OS X中,在setAllowedFileTypes:上有一个NSOpenPanel方法,例如)。除此之外,您应该确保以一种易于识别程序打开文件的方式定义文件格式。文件开头的一些众所周知的字节可能足以保护您免受大多数随机文件问题的影响。

答案 1 :(得分:1)

  1. 将唯一标识符放入文件(通常是第一行或某个标记)
  2. 限制文件扩展名
  3. 检查文件是否正常
  4. 如果可能,请使用1.或同时使用2.和3.