打开文本文件时遇到麻烦...
有这个代码,调用后有空字符串From File

    public string OpenTextFile ()
    {
        var stringFromFile = string.Empty;
        OpenFileDialog ofd = new OpenFileDialog();
        if (ofd.ShowDialog().ToString().Equals("OK"))
            stringFromFile = System.IO.File.ReadAllText(ofd.FileName);
        return stringFromFile;
    }

最佳答案

不需要调用ToString(),更糟糕的是,如果NullReferenceException的返回值为null,则将抛出ShowDialog(),因为ShowDialog()返回了另一个答案所指出的bool?Nullable<bool>)。

这是两行解决方案...

string OpenTextFile()
{
    var ofd = new OpenFileDialog();
    return ofd.ShowDialog() == true ?
            System.IO.File.ReadAllText(ofd.FileName) :
            String.Empty;
}

07-26 00:05