使用C#修改SharePoint母版页文本

时间:2013-01-15 07:08:34

标签: sharepoint streamreader

我有一个SharePoint事件接收器,用于我正在编写的功能。在FeatureActivated方法上,我想将控件添加到SharePoint母版页。为了做到这一点,我选择在主页面中注入一些文本,通过使用StreamReader打开文件,读取文本流,插入文本,然后使用SharePoint对象模型保存文件来添加控件

我遇到了StreamReader的问题。当它将文本读取到文本时,我所得到的只是一堆问号。

以下是代码:

foreach(SPFile file in files)
{
    switch(new FileInfo(file.Name).Extension)
    {
        case ".master":
            string masterString = string.Empty;
            using(StreamReader reader = new StreamReader(file.OpenBinaryStream()))
            {
                masterString = reader.ReadToEnd();
            }
            //
            // Inject the text I want into the masterString
            // Convert masterString into byte []
            // Save the byte [] back to SharePoint, overwriting the master 
            // page                          
            //
            break;
    }
}

masterString总是回来了????????????????????? .... 我需要它以纯文本的形式回来。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

尝试不同的编码(UTF-8,UTF-16等)

public StreamReader(
string path,
Encoding encoding)