首页 > 解决方案 > 如何使用 fs.writefile 创建 HTML 文件

问题描述

我需要使用fs.writefile. 我现在有一个 txt 文件 ( menuOutput.txt ),其中包含我需要在 HTML 上显示的所有信息。它看起来像这样:

午餐项目

17.26 便当盒 b - 生鱼片,盒装

15.46 便当盒 a - 照烧鸡肉,盒装

晚餐项目

6.30 蔬菜寿司,6 卷

8.10 金枪鱼卷,3 卷

7.11 鱼子,2 卷

Function createHTML (textFile) {
    return new Promise ((resolve, reject)=>{
        fs.readFile(textFile, 'utf8', (err,data) => {
            if (err) {
                reject(err)
            }
            resolve (data)
        })
    })
}

createHTML('menuOutput.txt') 
        .then(data=>{
            fs.writeFile ('index.html', data, (err) => {
                console.log (data)
                if (err) {
                    if (err) throw err
                    console.log ('created')

                }
            })
        })

但是,我的 HTML 文件只是一行文本,如何在函数中实现 HTML 标签?还是我的思维方式有什么问题?

标签: javascripthtmlnode.jsfs

解决方案


你可以试试这个代码修改。

createHTML('menuOutput.txt').then(data=>
    {
        var stream = fs.createWriteStream('output.html', {flags: 'a'});
        stream.write(data, function() {
        var html = buildHtml();
        stream.end(html);
        });
    });

推荐阅读