将cpp文件的内容导入我的网页[重复]

Posted

技术标签:

【中文标题】将cpp文件的内容导入我的网页[重复]【英文标题】:Importing content of a cpp file into my webpage [duplicate] 【发布时间】:2014-07-24 10:25:23 【问题描述】:

我有一个 C++ (.cpp) 文件,我希望在我的网页上对其内容进行格式化。我将其存储在本地;称之为myFile.cpp。我需要的流程是:

获取存储为 javascript 字符串 codeTextmyFile.cpp 的内容 用<替换所有codeText<字符,用&gtl;替换所有>字符 使codeText 成为<pre class="prettyprint" id="blah"> 的内部html(Google 的代码修饰符将在其中应用)

所以这是我失败的可怕尝试:

        var codeText;
        var codeFile = new XMLHttpRequest();
        codeFile.open("GET", "myFile.cpp", false);
        codeFile.onreadystatechange = function ()
        
          if(codeFile.readyState === 4)
          
            console.log(codeFile.status);
            if(codeFile.status === 200 || codeFile.status == 0)
            
              codeText = codeFile.responseText;
            
          
        
        codeFile.send(null);
    codeText = AB_Escape(codeText);
    document.getElementById("blah").innerHTML = codeText;

在哪里

function AB_Escape(txt)

    txt.replace("<","&lt;");
    txt.replace(">","&gt;");
    return txt;

这不起作用:我的控制台显示Uncaught TypeError: Cannot set property 'innerHTML' of null

希望这能让您了解我想要做什么。我怎样才能正确地做到这一点?

【问题讨论】:

不,只是don't use innerHTML but the DOM!不需要手动转义任何东西。 How to return the response from an AJAX call?(不要使用 SJAX!)和 Why does jQuery or a DOM method such as getElementById not find the element? 可能重复 【参考方案1】:

您的脚本在到达元素之前执行, 在正确的地方和/或在正确的时间它工作正常http://www.freakstyle.it/cpp/ 所以:将脚本放在底部或在 Dom 加载时执行

【讨论】:

【参考方案2】:

移动:

codeText = AB_Escape(codeText);
document.getElementById("blah").innerHTML = codeText;

到检查状态是否等于 200 的 if 循环:

if(codeFile.status === 200 || codeFile.status == 0)

    codeText = codeFile.responseText;
    codeText = AB_Escape(codeText);
    document.getElementById("blah").innerHTML = codeText;

收到代码文件后必须处理codeText。调用 send 命令时,尚未收到文件。

【讨论】:

以上是关于将cpp文件的内容导入我的网页[重复]的主要内容,如果未能解决你的问题,请参考以下文章

将 CSV 导入数据表 [重复]

反应导入组件文件夹[重复]

将大型 .sql 文件导入数据库 - 重复超时错误 phPMYAdmin

在cmake的所有cpp文件中包含c ++标头[重复]

如何使用 ShellExecute 从 VBScript 将参数传递给批处理文件 [重复]

导入大文件时的 MySQL 奇怪问题:键“PRIMARY”的重复条目