L .~ 2023-01-11 17:39 采纳率: 28.6%
浏览 70
已结题

HTML JS 自动读取数据

如何用JS自动 按时间顺序 读取192.168.1.30这个IP地址下的anv文件下的所有TXT文件
并且显示在HTML中
显示2023-1-12内容的时候前面的2023-1-11的内容也要显示出来

img

  • 写回答

8条回答 默认 最新

  • CSDN专家-showbo 2023-01-12 15:57
    关注

    计时器定时请求服务器获取数据接口,示例代码如下

    
    var http = require("http");
    let fs = require("fs");
    
    
    
    function getContent() {
        let folder = 'F:\\nodejs\\readtext\\text\\';//text文件所在路径
        var allcontent = fs.readdirSync(folder)//获取文件夹中的text文件
            .sort((a, b) => {//文件按照修改时间降序降序排列
                return fs.statSync(folder + b).mtime - fs.statSync(folder + a).mtime;
            }).map(i => {//读取text文件内容
                var fullpath = folder + i;
                var lines = fs.readFileSync(fullpath, 'utf-8').split('\n');//读取文件后回车拆分成数据行,如果text存储编码不是utf-8,而是ansi,注意改为gb2312编码读取
                lines.reverse();//将数据行反向,就是最下面的调整到最前面
    
                return lines.join('<br>');//重新将textn内容合成字符串
            }).join('<br/>');
        return allcontent;
    }
    
    
    var server = http.createServer(function (req, res) {
        res.setHeader('Content-Type', 'text/html; charset=utf-8');
        if (req.url == '/getdata') {//计时器发送的请求
            var content = getContent();
            res.write(content)
        }
        else {
            res.write(`<!doctype html>
    <meta charset='utf-8'/>
    <div id="div1"></div>
    <script src="https://g.csdnimg.cn/??lib/jquery/1.12.4/jquery.min.js"></script>
    <script>
    function loadData() {
        $.ajax({
            url: '/getdata',
            dataType: 'html',
            success: function (s) {
                $('#div1').html(s)
            }
        })
    }
    loadData();//第一次访问
    setInterval(loadData, 1000);//1s更新一次,其他时间改1000这个参数,单位为ms
    </script>
    `);
        }
        res.end();
    });
    var port = 3000;
    var hostName = '127.0.0.1';
    server.listen(port, function () {
        console.log(`服务器运行在http://${hostName}:${port}`);
    });
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

问题事件

  • 系统已结题 1月20日
  • 已采纳回答 1月12日
  • 创建了问题 1月11日

悬赏问题

  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂