This example adds a file from the document library of one site to the Shared Documents document library of another site and its subsites.
For an example that shows how to upload a local file to a folder on a SharePoint site programmatically, see 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();