1

我有一个用于我正在编写的功能的 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 总是以 ???????????????????????????.... 我需要它以纯文本形式返回。

有任何想法吗?

4

1 回答 1

0

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

public StreamReader(
string path,
Encoding encoding)
于 2013-01-15T07:14:42.737 回答