簡體   English   中英

如何從文件夾的動態csv文件創建HTML數據表

[英]How to create HTML data tables from dynamic csv files of a folder

我想知道如何從多個CSV文件創建HTML數據表。

例如,我有一個文件夾,其中包含名為"Data_Source1-Memory.csv", "Data_Source1-CPU.csv", Data_Source1-Disk.csv", Data_Source2-Memory.csv" and "Data_Source2-CPU.csv" CSV文件。

這些文件是根據“ Data_Source1”或“ Data_Source2”動態創建的。 因此,每次不一定都具有內存,CPU或磁盤CSV文件。

有沒有一種方法可以循環瀏覽這些用於“ Data_Source1”的csv文件,並將它們呈現在HTML表中( one table for Memory, one table for Disk and one table for CPU )。 然后循環瀏覽“ Data_Source2”文件夾,並將這些csv呈現為HTML表。

到目前為止,我所能找到的只是jQuery plugins ,據我測試,僅適用於靜態csv文件或數據(例如DataTables)。

我也知道存在哪些文件,所以我不必搜索是否有文件,我知道我需要哪些文件。 我只是不知道如何循環通過不同的csv文件來為每個csv文件生成一個表。

任何幫助或建議,將不勝感激。

只要服務器目錄啟用了目錄列表,並且您在域中運行腳本,那么從某個目錄中收集某些文件的列表就不會有問題。 只需使用$.ajax並從檢索到的列出HTML頁面的目錄中解析文件名。 以下適用於標准apache:

var fileMask = '-CPU', //signature of the files
    fileExt = 'csv'; //file extension
$.ajax({
    url: 'path/to/directory/',
    success: function (data) {
        var file, files = [];
        $('a[href]', data).each(function(i, a) {
            file = $(a).attr('href');
            if (~file.indexOf(fileMask) && file.match(/[^.]+$/) == fileExt) {
                files.push(file);
            }
        })
    }
})

結果是一個包含以下內容的files數組

['Data_Source1-CPU.csv', 'Data_Source2-CPU.csv', 'Data_Source3-CPU.csv']

如果希望文件列表按數字順序排列,則可以使用files.sort() 現在,將files用作自動創建的dataTable的基礎應該是明智的選擇-請參閱從上傳的csv數據創建dataTable列定義 -循環瀏覽files並插入每個CSV中的數據,而不是答案中的單個文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM