使用递归获取网站下的所有同类型文件

递归

红色字体就是啦,如有不明白的话,请与我联系QQ:20028205

using System;
using System.Text ;
using System.IO ;
using System.Xml ;
using System.Xml.XPath ;
using System.Web ;
using System.Collections ;

namespace GST.Common.Xml
{
/// <summary>
/// 得到站点内的所有Aspx文件,并存入Xml文件中
/// </summary>
public class GetAllFiles
{
public GetAllFiles()
{
//
// TODO: 在此处添加构造函数逻辑
//
}

/// <summary>
/// 更新Xml文件的某个支点
/// </summary>
/// <param name="Files"></param>
/// <param name="Desc"></param>
public void UpdateXmlFile(string Files,string Desc,string FileSrc)
{
XmlDocument doc = new XmlDocument();
doc.Load(HttpContext.Current.Server.MapPath(FileSrc));

XmlNode Node = doc.SelectSingleNode("/AspxFiles/File[text()=\""+Files+"\"]");

if (Node!=null)
{
Node.Attributes[0].InnerText = Desc ;
}

doc.Save(HttpContext.Current.Server.MapPath(FileSrc));

}

/// <summary>
/// 写入Xml文件
/// </summary>
public void WriteXmlFile(string FileSrc,ArrayList al)
{
XmlDocument doc = new XmlDocument();
doc.Load(HttpContext.Current.Server.MapPath(FileSrc));

XmlElement Element = doc.DocumentElement ;
bool Update= false;

foreach(object obj in al)
{

XmlNode Node = doc.SelectSingleNode("/AspxFiles/File[text()=\""+obj.ToString()+"\"]");

if (Node ==null)
{
XmlElement ElementChild =doc.CreateElement("File");
ElementChild.InnerText = obj.ToString();
XmlCDataSection cdata = doc.CreateCDataSection(obj.ToString());
XmlAttribute attribute = doc.CreateAttribute("Desc");
attribute.Value =cdata.Value ;
ElementChild.Attributes.Append(attribute);
Element.AppendChild(ElementChild);
Update = true;
}

}
if(Update)
doc.Save(HttpContext.Current.Server.MapPath(FileSrc));

}
/// <summary>
/// 返回所有的Aspx文件
/// </summary>
/// <returns>String Array</returns>
public void GetAllAspxFile(string WebPath,ref ArrayList al)
{

string[] AspxFiles = Directory.GetDirectories(WebPath);

if (AspxFiles.Length > 0)
{
foreach( string AspFile in AspxFiles)
{

foreach(string InnerFile in Directory.GetFiles(AspFile))
{
if(Path.GetExtension(InnerFile).ToLower() ==".aspx")
{

string FileName = Path.GetFileName(InnerFile);

al.Add(FileName);
}
}

GetAllAspxFile(AspFile,ref al);

}

}

else
{

string[] Files = Directory.GetFiles(WebPath);
foreach(string AspFile in Files)
{
if(Path.GetExtension(AspFile).ToLower() ==".aspx")
{

string FileName = Path.GetFileName(AspFile);
al.Add(FileName);

}
}
}

}

}
}

时间: 2024-12-01 02:35:47

使用递归获取网站下的所有同类型文件的相关文章

asp.net 获取目录下的文件数和文件夹数_实用技巧

复制代码 代码如下: int j = 0; protected void Button1_Click(object sender, EventArgs e) { DirectoryInfo dir = new DirectoryInfo(TextBox1.Text.ToString()); Label1.Text = GetAllFiles(dir).ToString(); }GetAllFiles方法为自定义方法,实现遍历整个文件夹文件的方法.代码如下: public int GetAllFi

请问下如何获取网站路径在本机路径的前一个目录里的文件路径?

问题描述 Server.MapPath("../DataBase/MyBook.mdb");我这样要出错,请问该怎么样用? 解决方案 解决方案二:stringPath=Server.MapPath("../DataBase/")+"/MyBook.mdb";解决方案三:还是一样,提示:未能映射路径"/DataBase/解决方案四:Server.MapPath("/DataBase/MyBook.mdb");取得物理全

javascript-如何用JS获取div下的子div

问题描述 如何用JS获取div下的子div 有多个独立的外层div,每个外层div内嵌一个内层的div,内层div在显示在外层div的下部.我要的效果是,当鼠标移入到一个外层div中时,改变这个外层div内的那个内层div.用Js怎么写代码?求大神指导 解决方案 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr

php递归获取目录内文件封装类分享

 php递归获取目录内文件封装类分享,可以递归子目录 代码如下:   代码如下: function readFileFromDir($dir) {     if (!is_dir($dir)) {         return false;     }     //打开目录     $handle = opendir($dir);     while (($file = readdir($handle)) !== false) {         //排除掉当前目录和上一个目录        

asp.net获取网站目录物理路径示例

 这篇文章主要介绍了asp.net获取网站目录物理路径的方法,需要的朋友可以参考下 页面后台cs文件的相对网站根目录的路径/view/Atlas   代码如下: string rootPath1= Server.MapPath("~");  string rootPath2 = Request.ApplicationPath;  string path1 = Server.MapPath("upload");  string path2 = Server.MapPa

百度是不可能“跨域”获取网站的用户行为

摘要: 百度搜索引擎是从什么角度去判断一个站到底有没有用户体验?根据笔者的经验,并且透过一些站长相关的QQ群.网站各方面的资讯了解到,很多人都说是根据网站内的点击率.跳出率. 百度搜索引擎是从什么角度去判断一个站到底有没有"用户体验"?根据笔者的经验,并且透过一些站长相关的QQ群.网站各方面的资讯了解到,很多人都说是根据网站内的点击率.跳出率.页面美观--等等,所以我相信很多人都可能一知半解,甚至是人云亦云,自己也不知道是怎样的.今天我就要尝试第一个站出来打破常规,勇于为大家分析一下到

android如何获取网站数据

问题描述 android如何获取网站数据 android应用是怎么获取网站数据的,比如在某个应用里,有起点小说排行榜,那这里边数据是怎么获取的? 在不提供SDK下. 解决方案 直接用http去访问网站抓网页再用正则表达式提取数据处理. 解决方案二: 同意楼上,没试过,但是用java可以实现,我用过,android应该也可以 解决方案三: 我之前用过一个开源的jar包 jsoup 也是从一个网站上抓取需要的数据做了一款app,这里是源码 https://github.com/cayden/joke

PHP不用递归遍历目录下所有文件的代码_php实例

实现代码: /** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ function scanfiles($dir) { if (! is_dir ( $dir )) return array (); // 兼容各操作系统 $dir = rtrim ( str_replace ( '\\', '/', $dir ), '/' ) . '/'; // 栈,默认值为传入的目录 $

ASP.NET编程获取网站根目录方法小结_实用技巧

本文实例讲述了ASP.NET编程获取网站根目录方法.分享给大家供大家参考,具体如下: 获取网站根目录的方法有几种如: Server.MapPath(Request.ServerVariables["PATH_INFO"]) Server.MapPath("/") Server.MapPath("")//当前代码文件所在的目录路劲 Server.MapPath(".") Server.MapPath("../"