我需要访问文件作为文本文件,并希望稍后处理它。但在我读取它之前,我如何识别我正在使用的文件只是一个文本文件。如果文件是另一种格式,我的整个代码错误地解释。我只想访问和处理文本文件。如何识别文件是一个文本文件或其他使用c#.net
目前我使用:
StreamReader objReader = new StreamReader(filePath);
我如何在C#.NET这样做呢?
我需要访问文件作为文本文件,并希望稍后处理它。但在我读取它之前,我如何识别我正在使用的文件只是一个文本文件。如果文件是另一种格式,我的整个代码错误地解释。我只想访问和处理文本文件。如何识别文件是一个文本文件或其他使用c#.net
目前我使用:
StreamReader objReader = new StreamReader(filePath);
我如何在C#.NET这样做呢?
如果你想获得的文件的扩展名可以使用
嗯,有启发,你可以申请:
但基本上它都是启发式的。在一天结束时,文件是一个名称和一些字节,以及一些关于访问权限的元数据。在某些文件系统中可以有更多的元数据可用,但是当复制文件时通常很难获取并且通常不会保留 - 所以不应该依赖于此。
如果文件是另一种格式,我的整个代码错误地解释。
当然,如果你期望一个文本文件并最终得到一个二进制文件,你的代码将错误地解释它。但是对于任何无效的文本文件,情况也是如此:如果在您期望的情况下它不是逗号分隔?或者不是json,那是你想要的?或者是在你无法处理的编码中?
问题是,除非你只是复制文本或者做一些低级别的事情,否则无论如何都需要比文本和二进制文件更多的检查。您应该(可能)检查整个文件是否符合您的需求。这将捕获传递到您的程序中的任何非文本文件!
什么是英语句子结构! – mauris 2010-04-08 06:00:31