SharePoint 2010遍历文档库中所有的文件,文件夹
转:http://hi.baidu.com/sygwin/item/f99600849d51a12b110ef3eb
创建一个可视WebPart,并拖放一个label控件到ascx文件上,用于显示结果,将lable的text属性设为空,具体过程就不在详述。下面是ascx.cs中的代码,如下:
protected void Page_Load(object sender, EventArgs e)
{
StringBuilder output = new StringBuilder();
using (SPWeb web = new SPSite("http://localhost").OpenWeb())
{
SPFolder folder = web.GetFolder("/docs");//确定要操作的文档库
Label1.Text += "<br/> folder:" + folder.Name;
SPFileCollection files = folder.Files;
foreach (SPFile file in files)//获取第一级文件也就是docs中的文件名
{
Label1.Text += "<br/>-----" + file.Url.ToString();
}
EnumerateFolders(folder.SubFolders);
}
}
//下面的方法是迭代获取文档库中的所有文件夹及其文件夹内的文件
private void EnumerateFolders(SPFolderCollection folders)
{
foreach (SPFolder subFolder in folders)//获取文件夹中的文件
{
//if (subFolder.Name != "Forms")
//{
Label1.Text += "<br/> folder:" + subFolder.Name;
SPFileCollection subFiles = subFolder.Files;
foreach (SPFile file in subFiles)
{
Label1.Text += "<br/>-----" + file.Url.ToString();
}
//}
SPFolderCollection subFolders = subFolder.SubFolders;//获取文件夹中的子文件夹
EnumerateFolders(subFolders);
}
}
可能你需要添加:using Microsoft.SharePoint和using System.Text两个命名空间
下面是我的库的情况,如下:

注意上图中URL中的Forms。部署后,结果如下:

如上图所示,我们的文档库内一共有5个文件夹,其中Forms,Document是系统创建的,docs是我们的库名,也是我们的第一级文件。NewLocaion,NewLocaion2是我们手动创建的。可以明显看到Forms中的文件并不是我们需要操作的,所以,可以将红色代码中的注释部分去掉,这样就不会显示Forms中的文件了。
可以参考:(如何:访问、复制和移动文件)http://msdn.microsoft.com/zh-cn/library/ms470176.aspx#Y180
SharePoint 2010遍历文档库中所有的文件,文件夹的更多相关文章
- SharePoint 2013 文档库中PPT转换PDF
通过使用 PowerPoint Automation Services,可以从 PowerPoint 二进制文件格式 (.ppt) 和 PowerPoint Open XML 文件格式 (.pptx) ...
- [sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表
写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的 ...
- 修改Sharepoint 文档库列表点击Excel文件默认跳转到Excel Service服务 xlviewer.aspx页面
在Sharepoint 文档库中,当点击库中的一个Excel文件时,Sharepoint默认为转跳到Excel Services上,无论是Sharepoint 的是否开启了Excel Service, ...
- MWeb for Mac使用教程-如何在文档库中快速搜索
使用MWeb for Mac专业的 Markdown 编辑写作软件,可以让你随时记录自己的想法,灵感,创意,为您的工作节省宝贵的时间.本篇文章带来的是MWeb for Mac如何在文档库中快速搜索使用 ...
- SharePoint 2007 文档库中的文档添加评论功能
背景:接到一个项目,要求文档管理,当然文档库就可以了,但是要求文档需要大家去读,读完以后还可以发表评论,这Moss貌似就有点困难了.和同事一起合计,想来想去也没有太好的办法,后来想到传统开发,两个表的 ...
- sharepoint文档库中日期显示详细日期,不显示几天前
文档库---库设置----栏
- 基于Picture Library创建的图片文档库中的上传多个文件功能(upload multiple files)报错怎么解决?
复现过程 首先,我创建了一个基于Picture Library的图片文档库,名字是 Pic Lib 创建完毕后,我点击它的Upload 下拉菜单,点击Upload Picture按钮 在弹出的对话框中 ...
- SharePoint 2013 操作文档库ECB菜单
在SharePoint的使用中,我们经常需要定制SharePoint的一系列菜单,这里就包括ECB菜单,下面,我们简单了解一下ECB菜单如何定制,以及原理. 1.正常情况文档库的ECB菜单如下图: 2 ...
- SharePoint Online 创建文档库
前言 本文介绍如何在Office 365中创建文档库,以及文档库的一些基本设置. 正文 通过登录地址登录到Office 365的SharePoint Online站点中,我们可以在右上角的设置菜单中, ...
随机推荐
- zoj 2777 Visible Lattice Points(欧拉函数,基础)
题目 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> #include<algo ...
- POJ 1745
#include <iostream> #define MAXN 10005 using namespace std; int _m[MAXN]; ]; int main() { //fr ...
- Fragment (一)
1,简介 Fragement(碎片)允许将Activity拆分成多个完全独立封装的可重用组件,每个组件有它自己的生命周期和UI布局,由此可见,Fragement依赖于Activity,它的生命周期 ...
- CF 86D Powerful array
离线+分块 将n个数分成sqrt(n)块. 对所有询问进行排序,排序标准: 1. Q[i].left /block_size < Q[j].left / block_size (块号 ...
- Android 使用系统的Activity播放音频文件 intent
Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(Inten ...
- lintcode:三数之和
题目 三数之和 给出一个有n个整数的数组S,在S中找到三个整数a, b, c,找到所有使得a + b + c = 0的三元组. 样例 如S = {-1 0 1 2 -1 -4}, 你需要返回的三元组集 ...
- ASP.NET并发处理
http://blog.csdn.net/hliq5399/article/details/6280288
- C程序的内存分配
一.预备知识-程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1.栈区(stack)- 由编译器自动分配释放,存放函数的参数值,局部变量的值等.其操作方式类似于数据结构中的栈. ...
- NSArray 利用数组创建数组
NSArray *array=[NSArray arrayWithObjects:@"1",@"2",@"3", nil]; ...
- redhat 新装后不能联网
1.ifconfig查看是否有ip地址,如果没有就配置,命令如下: [root@redhat ~]# system-config-network 设置DHCP 为 [*] [ok]后,重新ifconf ...