如何获得文件夹下图片路径???

qq1358661914 2014-07-22 03:32:47
我在数据库里存的是图片所在文件夹的路径,比如图片1为1.jpg,存的路径为materials/images,图片就在images里,但是images里不只有图1,还有图2、图3,我应该如何获取图片1的地址呢(事先不知道图片1的名字)???求大神!!!
...全文
341 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
获取图片所在文件夹目录全路径 protected void Page_Load(object sender, EventArgs e) { Response.Write("ProgramFiles目录全路径:" + System.Environment.GetEnvironmentVariable("ProgramFiles") + "<br/>"); Response.Write("开始菜单目录全路径:" + System.Environment.GetFolderPath(Environment.SpecialFolder.StartMenu) + "<br/>"); Response.Write("用户程序组目录全路径:" + System.Environment.GetFolderPath(Environment.SpecialFolder.Programs) + "<br/>"); Response.Write("文档模板目录全路径:" + System.Environment.GetFolderPath(Environment.SpecialFolder.Templates) + "<br/>"); Response.Write("我的图片目录全路径:" + System.Environment.GetFolderPath(Environment.SpecialFolder.MyPictures) + "<br/>"); Response.Write("Internet临时文件目录全路径:" + System.Environment.GetFolderPath(Environment.SpecialFolder.InternetCache) + "<br/>"); }
欢乐的小猪 2014-07-23
  • 打赏
  • 举报
回复
 string [] fileEntries = Directory.GetFiles(targetDirectory);
        foreach(string fileName in fileEntries)
            ProcessFile(fileName);
於黾 2014-07-22
  • 打赏
  • 举报
回复
遍历文件夹,可以得到文件夹下所有文件的名字 问题就是,你给的规则仅仅是:实拍>效果>绘制,还有1,2,3,4,怎么办? 你需要有个规则,规定到底取哪个图片 否则不用说程序自动取,你派个人去取,他也不知道你想要哪个
於黾 2014-07-22
  • 打赏
  • 举报
回复
事先不知道图片1的名字, 那你怎么知道应该去取图片1,而不是图片2?
sunny906 2014-07-22
  • 打赏
  • 举报
回复

            string path = @"materials\images"; //就是你数据库里存的图片所在文件夹的路径
            string finalPath = "";
            string[] type = new string[] { "实拍", "效果", "绘制" };
            int n = 1;
            int t = 0;
            while (true)
            {
                if (t < 3)
                {
                    finalPath = string.Format(@"{0}\{1}{2}.jpg", path, type[t], n);

                    //图片存在的话就直接返回图片路径,否则按照实拍>效果>绘制这样的顺序来取
                    if (File.Exists(string.Format(finalPath))) 
                    {
                        break;
                    }
                    else
                    {
                        t++;
                    }
                }
                else
                {
                    t = 0;
                    n++;
                }
            }
            Console.WriteLine(finalPath);
md5e 2014-07-22
  • 打赏
  • 举报
回复
一般是这样子的,我们在上传图片时就已经将文件另存为一个名为yyyyMMddHHmmssfff(按时间来重新命名)的文件,然后将这个的文件名保存到数据库里,而不是直接使用用户原文件的名称(这样会存在文件名相互冲突的情况发生)
qq1358661914 2014-07-22
  • 打赏
  • 举报
回复
好吧,就是从一个有多张图片的文件夹里取其中一张图片,图片命名按 实拍|效果|绘制 来,如实拍1、实拍2、效果1、效果2、绘制1、绘制2,但是尾巴这些图片都有,有缺少的话,按照实拍>效果>绘制这样的顺序来取。。。
熙风 2014-07-22
  • 打赏
  • 举报
回复
图片名字都不知道,你怎么取路径?过蒙么
敌敌畏耶 2014-07-22
  • 打赏
  • 举报
回复
还有,你存储在时候 为何不存储路径的全路径··· 非只存储他所在文件夹有和意义? 还是 你其他地方可以得到图片的名字?
敌敌畏耶 2014-07-22
  • 打赏
  • 举报
回复
引用 2 楼 qq1358661914 的回复:
引用 1 楼 duanzi_peng 的回复:
materials\images\1.jpg 这难道不是路径?
这是路径没错,但是我事先不知道图片的名字。。。
存储的里面的也没图片的名字? 难道存在数据库里面的就 :materials\images ???
敌敌畏耶 2014-07-22
  • 打赏
  • 举报
回复
啥意思? 搞会儿 我在数据库里存的是图片所在文件夹的路径 路径是啥样的? 又搞会儿 存的路径为materials/images ,。。。。。。。。。。。。。。。
qq1358661914 2014-07-22
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
materials\images\1.jpg 这难道不是路径?
这是路径没错,但是我事先不知道图片的名字。。。
exception92 2014-07-22
  • 打赏
  • 举报
回复
materials\images\1.jpg 这难道不是路径?

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧