md转成html文件

该博客介绍了如何使用Node.js将Markdown文件转换为HTML。通过读取Markdown文件,利用startsWith()方法检查行首的标题符号,然后用HTML标签替换它们来构建HTML结构。示例代码展示了将一级、二级和三级标题以及普通段落转换的过程,并最终写入新的HTML文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# Markdown 文件的一级标题
startsWith() 方法用来判断当前字符串是否以另外一个给定的子字符串开头,并根据判断结果返回 true 或 false。
正文段落部分正文段落部分正文段落部分
## Markdown 文件的二级标题
正文段落部分正文段落部分正文段落部分
正文段落部分正文段落部分正文段落部分
### Markdown 文件的三级标题
正文段落部分正文段落部分正文段落部分
正文段落部分正文段落部分正文段落部分
# Markdown 又一个一级标题

上图是md文件

下图是ms文件转成html文件

const fs = require('fs')
const path = require('path')

fs.readFile(path.join(__dirname, 'txt.md'), 'utf8', function (err, data) {
  if (err) {
    console.log(err)
    return
  }
  //  data 是文件的内容 是一个字符串   
  // ['# 一标题','内容','## 二级标题',....]
  //  把字符串 用\n 分割成数组
  const arr = data.split('\n')
  let bigStr = ''
  arr.forEach(item => {
    if (item.startsWith('# ')) {
      const newArr = '<h1>' + item.replace('# ', '') + '</h1>'
      bigStr += newArr
      console.log(bigStr)
    } else if (item.startsWith('## ')) {
      const newArr = '<h2>' + item.replace('## ', '') + '</h2>'
      bigStr += newArr
      console.log(bigStr)
    } else if (item.startsWith('### ')) {
      const newArr = '<h3>' + item.replace('### ', '') + '</h3>'
      bigStr += newArr
      console.log(bigStr)
    } else {
      const newArr = '<p>' + item + '<p>'
      bigStr += newArr
      console.log(bigStr)

    }

    fs.writeFile(path.join(__dirname, 'txt.html'), bigStr, function (err, data) {
      if (err) {
        console.log('错了', err)
        return
      }
      // console.log(data)
    })
  })
})

成功代码

<h1>Markdown 文件的一级标题
</h1><p>startsWith() 方法用来判断当前字符串是否以另外一个给定的子字符串开头,并根据判断结果返回 true 或 false。
<p><p>正文段落部分正文段落部分正文段落部分
<p><h2>Markdown 文件的二级标题
</h2><p>正文段落部分正文段落部分正文段落部分
<p><p>正文段落部分正文段落部分正文段落部分
<p><h3>Markdown 文件的三级标题
</h3><p>正文段落部分正文段落部分正文段落部分
<p><p>正文段落部分正文段落部分正文段落部分
<p><h1>Markdown 又一个一级标题
</h1><p><p>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值