从.txt加载字符串并在VisualStudio中的WebBrowser中显示HTML文件

时间:2018-10-09 07:46:16

标签: c# html filestream

我在Visual Studio 2017中工作,我有一个包含HTML文件的文件夹,该文件要显示在webBrowser元素中。

我尝试了不同的方法,但始终获得NULL异常,并希望找到一种方法来从.txt文件加载字符串(包含HTML的文件路径),并将我的webBrowser元素导航到该文件路径。 / p>

try
        {
            //Pass the file path and file name to the StreamReader constructor
            StreamReader sr = new StreamReader("C:/install/Win10-Tipps/link.txt");

            line = sr.ReadLine();

            //Continue to read until you reach end of file
            while (line != null)
            {
                //write the lie to console window
                Console.WriteLine(line);
                //Read the next line
                line = sr.ReadLine();
                Console.WriteLine(line);
                Uri link = new Uri(line);
                Console.WriteLine(link);
                webBrowser1.Navigate(link);


            }

            //close the file
            sr.Close();
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception");
        }

它会打印“ file:// C:/Install/Win10-Tipps/TippsHTML/TippSchnellePcSperre.html”,这是正确的文件路径,而且还会打印“ System.dll中的“ System.ArgumentNullException””。

1 个答案:

答案 0 :(得分:0)

假设我正确理解了您的意图: 我得到了一个名为“ pathToWebsite.txt”的文本文件,其中包含一个html文件的路径(在我的情况下为C:\ test.html)。

读取html的路径非常简单:

        string url = null;

        using(StreamReader reader = new StreamReader("C:\\pathToWebsite.txt"))
        {
            //If the textfiles only contains one url in the first line.
            url = reader.ReadLine();
        }

然后,我可以简单地告诉我的web浏览器导航到该路径:

if(url != null)
{
    //Maybe a check to make sure url is a valid path to a html page.
    webBrowser1.Navigate(url);
}