Класс SPFile

Представляет файл SharePoint веб-узла, может быть Страница "Веб-части", элемента в библиотеке документов или файлов в папке.

Иерархия наследования

System.Object
  Microsoft.SharePoint.SPFile

Пространство имен:  Microsoft.SharePoint
Сборка:  Microsoft.SharePoint (в Microsoft.SharePoint.dll)

Синтаксис

'Декларация
Public Class SPFile
'Применение
Dim instance As SPFile
public class SPFile

Замечания

Используйте метод GetFile или GetFileAsString класса SPWeb для возврата объекта один файл. В противном случае используйте свойство Files или SPWeb , или SPFolder класса возвращает объект SPFileCollection , который представляет коллекцию файлов веб-узла или папки. Используйте индексатор для получения один файл из коллекции. Например если коллекция присваивается переменной с именем collFiles, используйтеindexcollFiles[] в C# илиindexcollFiles() в Visual Basic, где индекс в коллекции, имя файла, включая расширение или относительный, веб-узел коллекции относительный или абсолютный URL-адрес узла в файле index .

Примеры

Этот пример добавляет файл из одного узла библиотеки документов в библиотеку документов Общие документы из другого веб-узла и его дочерних узлов.

Пример, в котором показано, как программно передача локального файла в папку на сайте SharePoint How to: Upload a File to a SharePoint Site from a Local Folderсм.

Dim siteCollection As SPSite = SPContext.Current.Site
Dim srcSite As SPWeb = siteCollection.AllWebs("Source_Site_Name")
Dim destSites As SPWebCollection = 
    siteCollection.AllWebs("Destination_Site_Name").Webs

Dim srcFile As SPFile = 
    srcSite.GetFile("Source_Folder_Name/Source_File")
Dim fileName As String = srcFile.Name
Dim binFile As Byte() = srcFile.OpenBinary()

Dim destSite As SPWeb

For Each destSite In  destSites

    If destSite.GetFolder("Shared Documents").Exists Then

        Dim destFolder As SPFolder = 
            destSite.GetFolder("Shared Documents")

        destFolder.Files.Add(fileName, binFile, True)

    End If

Next destSite
SPSite oSiteCollection = SPContext.Current.Site;
SPWeb oWebsiteSrc = oSiteCollection.AllWebs["Source_Site_Name"];
SPWebCollection collWebsites = 
    oSiteCollection.AllWebs["Destination_Site_Name"].Webs;

SPFile oFile = oWebsiteSrc.GetFile("Source_Folder_Name/Source_File");
string strFilename = oFile.Name;
byte[] binFile = oFile.OpenBinary();

foreach (SPWeb oWebsite in collWebsites)
{
    if (oWebsite.GetFolder("Shared Documents").Exists)
    {
        SPFolder oFolder = oWebsite.GetFolder("Shared Documents");
        oFolder.Files.Add(strFilename, binFile, true);
    }
    oWebsite.Dispose(); 
}
oWebsiteSrc.Dispose();

Примечание

Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.

Потокобезопасность

Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

Справочные материалы

Элементы SPFile

Пространство имен Microsoft.SharePoint