当前位置:编程学习 > C#/ASP.NET >>

C#在网站子目录下创建文件

大致是这样的 
我有两个集合 一个是网站倒数第三层的文件夹名称 另一个是倒数第二层文件夹名称
现在我需要根据这两组集合 找到最后的子文件夹下的所有文件名称
然后在这个目录下创建一个 txt 里面是当前目录所有MP3文件的名称的集合(用逗号隔开)
我在网上找到了一段代码  
具体如下:

 static List<string> GetFileName(string DirName, string FileName)
        {
            //文件夹信息
            DirectoryInfo dir = new DirectoryInfo(DirName);
            //如果非根路径且是系统文件夹则跳过
            if (null != dir.Parent && dir.Attributes.ToString().IndexOf("System") > -1)
            {
                return null;
            }
            //取得所有文件
            FileInfo[] finfo = dir.GetFiles();
            List<string> fname = new List<string>();
            for (int i = 0; i < finfo.Length; i++)
            {
                //获取的文件名放在集合里 以便读取
                fname.Add(finfo[i].Name);

            }
            //取得所有子文件夹
            DirectoryInfo[] dinfo = dir.GetDirectories();
            for (int i = 0; i < dinfo.Length; i++)
            {
                //查找子文件夹中是否有符合要求的文件
                GetFileName(dinfo[i].FullName, FileName);
            }
            return fname;
        }

然后调用方法
 static void Main(string[] args)
        {
            //存储最新数据
            List<ExcelModel> list = new List<ExcelModel>();
            // 读取excel文件路径
            string path = string.Format(@"D:\input\getFileNameListForAudio2013-5-4.xls");
            DataTable dt = ExcelToDataSet(path).Tables[0];
            int errorSize = 0;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                ExcelModel em = new ExcelModel();
                em.bookname = dt.Rows[i]["图书名"].ToString();
                em.bookUrl = dt.Rows[i]["图书路径"].ToString();
                em.setname = dt.Rows[i]["套书名"].ToString();
                em.setUrl = dt.Rows[i]["套书路径"].ToString();
                if (em.bookUrl != "" && em.setUrl != "")
                {
                    list.Add(em);
                }
                else
                {
                    errorSize += 1;
                    Console.WriteLine(em.bookname + "----未找到,匹配无效的套书路径或 图书路径");
                }
            }
            //遍历正确(可找到图书路径)的集合
            //取出图书路径bookUrl 和套书路径setUrl
            List<string> fileNameList = new List<string>();

            //文件流 创建文件 读写文件
            // 在目录下创建文件
            FileStream fs = new FileStream(@"D:\test\message.txt", FileMode.CreateNew, FileAccess.ReadWrite);
            //(文件)写入流 
            StreamWriter sw = new StreamWriter(fs);


            foreach (ExcelModel li in list)
            {
                string bookUrl = li.bookUrl;
                string setUrl = li.setUrl;
                // 调用方法 传递2个参数 bookUrl和setUrl
                Console.WriteLine(bookUrl + "===" + setUrl);
                //  getSetUrl(setUrl);
                fileNameList = GetFileName(@"D:\test", bookUrl);
                foreach (string filename in fileNameList)
                {
                    sw.Write(filename + ",");
                }
            }
            Console.WriteLine("==============end=====================");
            Console.ReadKey();
        }

但是问题来了

上面这张图里面 标注了两个地址 我怎么能确保他是文件夹最下层的目录路径?
PS:我是在D盘里建了多个文件夹 进行测试 。 求解决办法。
顺便问一下 是否有可以直接创建在服务器上文件夹最下层的办法?
在线等~ 分不多 还望谅解!~

C# 服务器 文件夹 目录 --------------------编程问答-------------------- 补充一下 文件生成以后 里面内容是空的 求解 新人求照顾!~ --------------------编程问答-------------------- 帮你顶一下,等大神 --------------------编程问答-------------------- 通过FileInfo和递归,就能判定。。非常简单。。

--------------------编程问答--------------------
引用 3 楼 timmygod 的回复:
通过FileInfo和递归,就能判定。。非常简单。。

我想知道我这段代码 应该怎么改 --------------------编程问答--------------------
引用 3 楼 timmygod 的回复:
通过FileInfo和递归,就能判定。。非常简单。。

或者你有源码 可以参考的也行 我第一次搞这个 不知道思路上是不是有错误 --------------------编程问答-------------------- 路径 FileStream fs = new FileStream(Server.MapPath(~\test\message.txt), FileMode.CreateNew, FileAccess.ReadWrite);试试 --------------------编程问答--------------------
引用 6 楼 lom021622 的回复:
路径 FileStream fs = new FileStream(Server.MapPath(~\test\message.txt), FileMode.CreateNew, FileAccess.ReadWrite);试试


是这样的 我要以代码中 setURL和bookUrl 为路径 在其最下层创建txt
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,