`
xfth2009
  • 浏览: 49668 次
  • 性别: Icon_minigender_2
  • 来自: 襄樊
社区版块
存档分类
最新评论

通过文件名检测文件是否存在于某文件夹中

阅读更多
2009-08-06

    从太平洋采集了7万多条商品数据,但是采集到的商品小图才7千多张,但是商品的图片路径又都写到数据库中了,所以在显示数据的时候从数据库中取出图片路径出来的时候要判断该图片是否存在于采集下来的图片文件夹中.
    要通过文件名判断文件是否存在于文件夹中,最容易想到的方法就是通过Directory.GetFiles(Server.MapPath("~/niunantest/images"))取出图片文件夹下的所有文件的全路径的名称,如:
"D:\\太平洋商品数据查看\\pcdata\\images\\005814.jpg"
然后就可以通过foreach循环一个一个判断了,在循环中可通过字符串的Contains方法判断全路径中是否包含该文件名.
    在用智能提示的时候发现string[]字符串数组也有Contains方法,判断某个字符是否在某字符数组中,但是我要比较的是某个字符是否包含中数组中的某个元素中, 根据代码智能示,Contains的第二个重载方法接收两个参数,第二个参数是实现了IEqualityComparer接口的一个类,到MSDN查了一下资料,得如下代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

public partial class test : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string[] files = Directory.GetFiles(Server.MapPath("~/images"));
        string str = "061077.jpg";
        bool b = files.Contains(str, new Compare());
        Response.Write("要比较的值:" + str + "<br >比较结果:" + b);
    }
}

public class Compare : IEqualityComparer<string>
{
    #region IEqualityComparer<string> 成员

    /// <summary>
    /// </summary>
    /// <param name="x">类似于:"D:\\太平洋商品数据查看\\pcdata\\images\\005814.jpg"</param>
    /// <param name="y">类似于:"009018.jpg"</param>
    /// <returns></returns>
    public bool Equals(string x, string y)
    {
        FileInfo fi = new FileInfo(x);
        string tmp = fi.Name;
        if (y == tmp)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

    public int GetHashCode(string obj)
    {
        return obj.ToString().ToLower().GetHashCode();
    }

    #endregion
}


    这样只需要用数组的Contains方法即可得到我想要的结果!
分享到:
评论

相关推荐

    VB 检测文件是否存在

    VB 检测文件是否存在 VB 检测文件是否存在

    Delphi IsFileName判断文件名是否有效.rar

    Delphi 判断文件名是否有效,主要判断文件名中是否包括有一些特殊字符,比如斜杠之类的,看了代码,原来挺基础的,主要是使用了Delphi中的IsFileName函数,不几行代码就搞定了,下面的代码仅供参考:  procedure ...

    文件检测工具.zip

    这是一个检测文件重复的工具(AllDup),能够快速检测出重复了的文件,包括文本、图片、音乐、视频等,支持以文件名、文件扩展名、文件大小等方式搜索,支持查找和硬链接重复的文件。该工具比较轻量,免费使用。

    VB文件系统实例-文件系统全家福

    检测文件是否存在 建立多级目录 将文件夹目录保存到INI文件当中 批量移动文件 确定文件是否为可执行文件 删除含文件的目录 顺序文件 随机文件 文件浏览 在临时文件下建立临时文件 自动识别文件路径读取相应内容

    VC++ 使用 _access函数判断文件或文件夹是否存在

    函数返回 – 1,则名称文件不存在或不具有特定模式;在这种情况下,如下表errno 所示设置。 EACCES 访问被拒绝:文件权限的设置不允许指定的访问权限。 ENOENT 未找到文件名或路径。 EINVAL 无效参数。 备注 当...

    bin文件转bin文件转换工具

    --检测原bin文件数据长度,增加至第1-4个字节 --将AM335X的内部地址0x402F0400,增加至第5-8个字节 --将原bin文件的数据以4个字节为单位进行顺序转换 运行脚本前,需要修改脚本里面的文件名: 第1步:拷贝原bin文件...

    基于Pytorch的Yolov4算法实现车辆检测以及跟踪(深度学习)

    调整完成后运行该文件,在data/ImageSets/Main文件夹中生成对应数据集的图片文件名 运行voc_annotation.py文件,运行前将文件中的classes列表替换为自己数据集的class的名字 运行后自动生成yolo_train.txt文件,文件...

    实验七 NTFS文件系统权限实验.doc

    6. 列出文件夹目录权限:允许用户列出文件夹中的文件和子文件夹。 六、 实验结论 通过本实验,我们学习了 NTFS 文件系统权限的管理和应用,学会了对权限的设置和管理。实验结果表明,NTFS 文件系统权限可以有效地...

    工具软件(自己写的)(打包的一体程序点击运行即可使用),pyton , 文件夹和文件名的查找和筛选

    需要将程序目录下的某类文件类型都得到时 获取文件的路径和名称又不想挨个挨个点去看的时候 筛选模式 (这个是带后缀检测一起的) 1.文件带路径 2.纯文件名 使用场景: 想获取项目中脚本比如.bat的时候你挨个挨去找...

    rar压缩软件.rar

    RAR 是一个让你在命令行模式中管理压缩文件的控制台应用。RAR 提供压缩、加 密、数据恢复和许多其它此手册中描述的其它功能。 RAR 只支持 RAR 格式压缩文件,它默认有 .rar 扩展名。不支持ZIP 和其他格 式。即使...

    像素分类准确率计算MATLAB程序

    分为三个文件夹放图片,文件夹original放原始图片,文件夹manual放人工标记图片,文件夹out放硬件检测的输出图片,三个文件夹中对应的图片文件名必须相同。 创建文件夹时,根据路径修改程序中的文件路径,直接运行...

    文件检测大师3.3(让统计变得更轻松)

    比如:以文件后缀,文件大小,文件访问日期,文件名包含字符等。 可以已文件为准进行数据统计,您只需要输入一个字符串或字符,软件便会 在源文件以只读的方式搜索,一个不落的全部统计。 所有这些结果,都会以...

    python基于深度学习文本相似度检测系统设计.zip

    实现以下文件夹的任务栏属性:文件名,文件夹里面的文件数量,文件夹的大小,创建时间,操作(下载文件夹,删除,重命名,收藏)以下图片参考。 (2)上传功能,上传的时候要指定文件夹,并上传到指定的文件夹里面...

    文件河(FileRiver)

    文件河SuchSofts是一款用以监视文件变化,撤消文件操作的小软件,可以用于检测文件的细微变化,比如中毒了,被移动了,或者是被修改过了之类的各种动作! 功能一览: 记录对指定的多个文件夹(甚至整个磁盘)的操作...

    EncryptBox_2010k

    ◆支持为文件夹或文件设置注释,支持为文件夹或文件设置标签并依据标签快速定位,支持按文件夹名或文件名模糊查找,支持快速定位最近操作过的密码箱文件。 ◆支持界面、操作方式和安全级别的定制。 ◆支持密码箱的...

    AllDup(重复文件查找)v4.5一款搜索并删除计算机上重复文件的软件.rar

    功能强大的搜索引擎使您能够通过以下标准的组合来查找重复项:文件名,文件扩展名,文件大小,文件内容,文件日期,文件属性,硬链接和类似图片等。 软件功能 没有更多的文件克隆或文件重复! 如果您有大量的音乐,...

    NoClone2013中文汉化破解版.rar

    软件介绍: ...为什么要检测重复的文件:如果硬盘中存在重复的文件,就会占用大量的硬盘空间,而且当杀毒软件进行全盘扫描时,也会耗费不必要的时间。检测后的重复文件可以智能标记、批量删除、移动或导出。

    EncryptBox文件密码箱

    1、一款免费、多项创新技术、多重保护,集加密、移动加密、防删除防复制、文件粉碎、分割、嵌入隐藏等功能于一身的文件安全存储管理软件。 2、操作简单、透明加密,打破传统的对文件先加密、编辑时解密、编辑后再...

    Fileaxy-136(文件重复数据处理工具).rar

    在文件或文件夹中搜索路径集成的标记词 按种类,文件夹名称,字母数字系列,预览大小等对文件进行分组 显示图像文件的幻灯片并提升收藏夹 保护收藏夹不被更改 按访问属性,最大大小,唯一性,原型,受限名称等...

Global site tag (gtag.js) - Google Analytics