把 网页代码 嵌入到 单片机程序中 2 日志2024/7/26

之前不是说把 网页代码 嵌入到 单片机程序中 嘛!

目录

之前不是说把 网页代码 嵌入到 单片机程序中 嘛!

 修改vs的tasks.json配置

 然后 测试

结果是正常的,可以编译了

但是:当我把我都html代码都写上去之后

还是会报错!!!

内部被检测到了,没辙,只有手动更新了小工具代码

界面展示

​编辑功能:两种转换格式分别对应不同用法,一键复制到剪切板(免去全选操作) 


本来可以 const char* html=R"( )";

这样写的话.这样中间可以直接放 网页代码 而不用特别的去转义!

但是我一直没有用上,一直用的前面我发布的 把 网页代码 嵌入到 单片机程序中,2024/7/25 17:33-CSDN博客

今天就挺莫名其妙的了解到了真相.............gcc版本过低

 之后我又发现..................它这个版本支持!

GCC 10.3.0默认支持C++11,显式指定标准总是个好习惯。在你的编译命令中加入-std=c++11

 修改vs的tasks.json配置

   {
       "version": "2.0.0",
       "tasks": [
           {
               "label": "build",
               "type": "shell",
               "command": "g++",
               "args": [
                   "-std=c++11", //明显的指定支持c++11 风格
                   "${file}",
                   "-o",
                   "${fileDirname}/${fileBasenameNoExtension}"
               ],
               "group": {
                   "kind": "build",
                   "isDefault": true
               }
           }
       ]
   }

 然后 测试

const char* html=R"(<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>)";

结果是正常的,可以编译了

但是:当我把我都html代码都写上去之后

还是会报错!!!

内部被检测到了,没辙,只有手动更新了小工具代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        body {
            padding: 0;
            margin: 0;
            box-sizing: border-box;
           
        }

        .container {
            overflow-x: hidden;

            width: 100vw;
            height: 90vh;
            background-color: bisque;

        }
        #box {
            width: 100vw;
            height: 10vh;
            position: relative;
            display: flex;
            justify-content: center;
            z-index: 2;
            
        }

        .button-style {

            bottom: 0;
            background-color: rgb(2, 120, 159);
            width: 100%;
            height: 10vh;
        }

        #but1 {
            margin-right: 5%;
        }

    
    </style>
</head>

<body>
    <div id="daima" class="container" contenteditable="true">


    </div>
    <div id="box">
        <button id="but" class="button-style" onclick="zy()">转义符模式:const char* html="转义后代码";</button>
        <button id="but2" class="button-style" onclick="zy2()">双引号变单引号模式:const char* html=R"(处理后代码)";</button>
        <button id="but3" class="button-style" onclick="zy3()">复制到剪切板</button>
    </div>

    <script>

        var hq;
        var typea = false;
        function zy() {
            if (!typea) {
                hq = document.getElementById('daima').textContent;//获取代码
                typea = true;
            }
            document.getElementById('but').style.backgroundColor = 'red';
            setTimeout(function () {
                document.getElementById('but').style.backgroundColor = 'rgb(2, 120, 159)';
            }, 200);
            let zh = hq.replace(/"/g, '\\"');//查找字符串 hq 中的所有双引号,并将它们替换为转义后的双引号(即 \")。
            document.getElementById('daima').innerText = zh;
        }
        function zy2() {
            if (!typea) {
                hq = document.getElementById('daima').textContent;//获取代码
                typea = true;
            }
            document.getElementById('but2').style.backgroundColor = 'red';
            setTimeout(function () {
                document.getElementById('but2').style.backgroundColor = 'rgb(2, 120, 159)';
            }, 200);
            let zh = hq.replace(/"/g, "'");//查找字符串 hq 中的所有双引号,并将它们替换为转义后的单引号。
            document.getElementById('daima').innerText = zh;
        }

        function zy3() {
            var newdaima=document.getElementById('daima').innerText;
            var but3=document.getElementById('but3');
            but3.style.backgroundColor = 'red';
            setTimeout(function () {
                document.getElementById('but3').style.backgroundColor = 'rgb(2, 120, 159)';
            }, 200); 
            navigator.clipboard.writeText(newdaima).then(function () {
               
                document.getElementById('daima').innerText="";
                hq="";
                typea=false; 
                alert("复制成功!");
            }, function (err) {
                alert("复制失败!");
            });
         }

    </script>
</body>

</html>

界面展示

功能:两种转换格式分别对应不同用法,一键复制到剪切板(免去全选操作) 

  • 19
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值