有没有一种方法可以从sharepoint下载文件,编辑它并在应用程序中上传备份

本文关键字:编辑 应用程序 备份 文件 下载 一种 方法 sharepoint 有没有 | 更新日期: 2023-09-27 18:07:26

我正在开发一个应用程序c#(winforms),可以从您的计算机打开xml文件,编辑它(删除节点,添加新的节点和更改现有的节点),当然,它再次保存到您的计算机。

该xml文件被上传到我们网站的sharepoint 2007库中。所以我想省去在电脑上保存文件然后手动上传的麻烦。

是否有一种方法,而不是在本地打开文件,它可以从sharepoint库下载相同的文件,打开它进行编辑,然后将更改保存到库中的文件?

使用Visual Studio Ultimate 2010,应用程序使用。net 3.5

谢谢。

有没有一种方法可以从sharepoint下载文件,编辑它并在应用程序中上传备份

这里你有M$演示应用程序,可以下载/上传文件到SP2007。最重要部分:

下载:

using (SPSite site = new SPSite(txtSite.Text)) 
            { 
                using (SPWeb web = site.OpenWeb()) 
                { 
                    SPFolder myLibrary = web.Folders[txtDocLib.Text]; 
                    foreach (SPFile file in myLibrary.Files) 
                    { 
                        if (file.Name == comboBox1.SelectedItem.ToString()) 
                        { 
                            byte[] bytes = file.OpenBinary(); 
                            try 
                            { 
                                FileStream fs = new FileStream(dialog.FileName, FileMode.Create, FileAccess.ReadWrite); 
                                BinaryWriter bw = new BinaryWriter(fs); 
                                bw.Write(bytes); 
                                bw.Close(); 
                                MessageBox.Show("File downloaded to: " + dialog.FileName); 
                            } 
                            catch (Exception ex) 
                            { 
                                MessageBox.Show(ex.Message); 
                            } 
                        }                             
                    } 
                } 
            }
上传:

using (SPSite oSite = new SPSite(txtSite.Text)) 
        { 
            using (SPWeb oWeb = oSite.OpenWeb()) 
            {                     
                SPFolder myLibrary = oWeb.Folders[txtDocLib.Text]; 
                // Prepare to upload 
                Boolean replaceExistingFiles = true; 
                String fileName = System.IO.Path.GetFileName(txtSelectedFile.Text); 
                FileStream fileStream = File.OpenRead(txtSelectedFile.Text); 
                // Upload document 
                SPFile spfile = myLibrary.Files.Add(fileName, fileStream, replaceExistingFiles); 
                // Commit  
                myLibrary.Update(); 
            } 
        }