C#程序遍历文件夹获取图片信息:名称、宽度与高度

1星 需积分: 42 24 下载量 172 浏览量 更新于2024-09-08 收藏 1KB TXT 举报
该代码示例展示了如何使用C#编程语言获取指定文件夹中的所有.jpg图片的文件名、宽度和高度。通过遍历文件夹,筛选出包含".jpg"扩展名的文件,然后利用System.Drawing命名空间中的Image类来读取图片的元数据。 详细解释如下: 1. 目录遍历:首先定义一个名为`TraversalFile`的方法,它接受一个字符串参数`dirPath`,表示待遍历的文件夹路径。方法内部,检查`dirPath`是否对应一个存在的目录,如果是,则创建一个`DirectoryInfo`对象来处理该目录。 2. 文件过滤:使用`DirectoryInfo.GetFiles()`方法获取该目录下的所有文件。然后通过一个`foreach`循环遍历这些文件,检查每个文件的名称是否包含".jpg",这是判断是否为图片文件的标准。 3. 图片信息读取:对于每个匹配的文件,创建一个`FileStream`对象来打开并读取文件内容。接着,使用`Image.FromStream()`方法从流中加载图片,这会返回一个`Image`对象,包含了图片的详细信息。 4. 图片属性获取:`Image`对象提供了`Width`和`Height`属性,分别表示图片的像素宽度和高度。在本例中,将图片的名称、宽度和高度写入文件或输出到控制台,以便于查看或进一步处理。 5. 异常处理:在整个过程中,使用`try-catch`语句捕获可能发生的异常,如文件访问权限问题或文件格式不正确等。如果发生异常,将异常消息显示给用户。 这段代码的核心是利用C#的`System.IO`和`System.Drawing`命名空间提供的功能来处理文件系统和图像数据。开发者可以依据此代码进行扩展,以适应不同文件类型或更复杂的图片元数据需求。例如,可以增加对其他图片格式的支持(如.png, .gif等),或者将图片信息存储到数据库或内存结构中,以便进行更复杂的分析和处理。