C# - 使用变量创建和编写HTML文件

时间:2015-01-12 14:56:16

标签: c# html

Basiclly我正在尝试创建一个HTML,我已经编写了它,但我希望用户能够在文本框上放置一些文本并将其保存到字符串中,以后在创建HTML文件时使用。

我尝试过使用StreamWriter进行升技,但我认为这不是最好的主意。 此外,我希望它在默认的Web浏览器上打开,或者只在IE上打开,如果在创建文件后它更容易。

我真的需要帮助,因为我正在努力,尤其是创作部分。 谢谢你的阅读!

2 个答案:

答案 0 :(得分:5)

您也可以在没有外部库的情况下执行此操作。

按如下方式设置HTML文件:

<!DOCTYPE html>
<html>
<header>
<title>{MY_TITLE}</title>
</header>
<body></body>
</html>

然后编辑并保存来自C#的HTML:

const string fileName = "Foobar.html";

//Read HTML from file
var content = File.ReadAllText(fileName);

//Replace all values in the HTML
content = content.Replace("{MY_TITLE}", titleTextBox.Text);

//Write new HTML string to file
File.WriteAllText(fileName, content);

//Show it in the default application for handling .html files
Process.Start(fileName);

答案 1 :(得分:0)

如果您已经拥有要导出的HTML(只是未自定义),您可以手动向其中添加格式字符串(例如{0}{1}{2})替换应用程序中的文本,然后将其作为资源嵌入,在运行时加载,使用string.Format替换TextBox文本,最后再将其写出来。这无疑是一种非常脆弱的方法,因为您需要确保资源文件和您对string.Format的调用之间的参数数量一致。事实上,这是一种可怕的方式。实际上,你应该像@EmilePels建议的那样去做,这基本上是这个答案不那么脆弱的版本。