C# - 创建并编写带有变量的 HTML 文件

本文关键字:变量 HTML 文件 创建 | 更新日期: 2023-09-27 18:37:17

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

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

我真的需要帮助,因为我正在挣扎,尤其是在创建部分。感谢您的阅读!

C# - 创建并编写带有变量的 HTML 文件

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

按如下方式设置 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);

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