Create Folders and Sub-Folders in SharePoint Programmatically

How to create Folders in SharePoint 2013?

To create a folder in SharePoint list or Library, follow these steps:

  • Navigate to your SharePoint list or library
  • From the “Files” tab on the Ribbon, click on the “New Folder” buttonsharepoint 2013 create a folder
  • Give a name to your new folder and click “Save” how to create folder in sharepoint 2013 programmatically

What if you don’t find “New Folder” button in the ribbon? 
If you don’t get “New Folder” button, it could be disabled. Here is how to enable folders in SharePoint list:

  • Go to List Settings, Click on “Advanced Settings”
  • Scroll down and set “Yes” to Make “New Folder” command available option.sharepoint 2010 create folder in a list

In a Migration automation tool development, had to create folders and sub-folders from the code programmatically. Here I’m sharing the code snippets in C#

using (SPSite site = new SPSite("http://sharepoint.company.com"))
{
    using (SPWeb web = site.OpenWeb())
    {
         //Get the List
         SPList list = web.Lists["Project Tracker"];

         //Create a Folder
         SPListItem folder = list.AddItem(list.RootFolder.ServerRelativeUrl, SPFileSystemObjectType.Folder, "Sales Documents");
         folder.Update();

         //Create a Sub-Folder
         SPListItem SubFolder = list.AddItem(folder.Folder.ServerRelativeUrl , SPFileSystemObjectType.Folder, "APAC Sales Docs");
         SubFolder.Update();

     }         
}

Alternatively, you can use:

//Get the List
SPList list = web.Lists["Shared Documents"];
String url = list.RootFolder.ServerRelativeUrl.ToString();
SPFolderCollection folders = web.GetFolder(url).SubFolders;

//Create new folder
folders.Add("New Documents");

Here is the PowerShell to create a folder in SharePoint: How to Create a Folder in SharePoint Document Library using PowerShell?

Salaudeen Rajack

Salaudeen Rajack is a SharePoint Architect with Two decades of SharePoint Experience. He loves sharing his knowledge and experiences with the SharePoint community, through his real-world articles!

6 thoughts on “Create Folders and Sub-Folders in SharePoint Programmatically

  • September 23, 2020 at 9:20 AM

    It gave me an error “Could not load file or assembly ‘Microsoft.SharePoint.Library, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c’ or one of its dependencies. The system cannot find the file specified.”:”Microsoft.SharePoint.Library, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c

    Reply
  • October 26, 2016 at 5:27 PM

    Will you solution to create a folder work with SharePoint Online or is this only for on premise?

    Reply
  • May 15, 2013 at 10:27 AM

    That’s give me an error, this is what i get :

    Le terme « Get-SPWeb » n’est pas reconnu comme nom d’applet de commande, fonction, fichier de script ou programme exécutable. Vérifiez l’orthographe du nom, ou si un chemin d’accès ex
    iste, vérifiez que le chemin d’accès est correct et réessayez.
    Au niveau de ligne : 4 Caractère : 15
    + $web=Get-SPWeb <<<< "http://sharepoint.company.com" + CategoryInfo : ObjectNotFound: (Get-SPWeb:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException Vous ne pouvez pas appeler de méthode sur une expression ayant la valeur Null. Au niveau de ligne : 6 Caractère : 28 + $list=$web.Lists.TryGetList <<<< ("Documents") + CategoryInfo : InvalidOperation: (TryGetList:String) [], RuntimeException + FullyQualifiedErrorId : InvokeMethodOnNull

    Reply

Leave a Reply