11
votes

Convertir le fichier CSV en horlogère JSON DataTable

Est-ce que quelqu'un sait-il obtenir un fichier URL CSV et la convertir en un objet JSON afin que je puisse utiliser des outils Google Cartting dans JS?


2 commentaires

Essayez-vous d'analyser le CSV en JS ou dans une autre langue et avez-vous simplement cette sortie JSON pour JS?


J'ai pu analyser les fichiers CSV en deux tableaux en C # sur le backend. Maintenant, je voudrais créer un objet JSON (que je puisse utiliser sur l'avant à l'aide de ces deux tableaux de tableaux pour se lier à un graphique Google JS API.


5 Réponses :


1
votes

CSV et JSON sont des formats différents. JSON est hiérarchique tandis que CSV représente une liste de valeurs. Donc, je suppose que vous devrez d'abord analyser le CSV ( à l'aide d'un analyseur bien sûr et Ne vous mettez pas en œuvre ). Cet analyseur vous donnera un objet que vous pourriez ensuite sérialiser dans JSON ou probablement convertir en un autre objet avant sérialisation (à nouveau à l'aide d'un analyseur ) afin d'obtenir le format souhaité.


0 commentaires

3
votes

Autant que je sache, pour la plupart des scénarios, vous pouvez activer la CSV en une matrice JS de tableaux, une matrice ou tout objet JavaScript qui suit votre convention d'outil de cartographie.

Vous devrez peut-être:

  1. Obtenez le contenu du fichier CSV
  2. analyse
  3. enveloppez les résultats de 2 dans votre outil de cartographie JSON (?)
  4. Appelez votre bibliothèque de cartographie

    Pour 1, si le fichier CSV est hébergé dans votre domaine, vous pouvez faire un simple XMLHTTPRequest, sinon essayer la recherche de la même stratégie d'origine ".
    La partie délicate est le point 2. J'ai vu plusieurs tentatives infructueuses pour analyser les fichiers CSV à la main (les points-virgules peuvent être contenus dans le cadre de la valeur, etc.) ... Découvrez le lien.


0 commentaires

19
votes

Je réalise que c'est une vieille question, mais je suis tombé sur elle aujourd'hui, devait faire la même chose et écrir un script pour le faire. Vous pouvez le vérifier à mon Github Repo .

Le code suivant accomplirait ce que vous " re après (en utilisant jQuery): xxx

codage heureux :)


3 commentaires

Je viens d'utiliser votre dossier pour obtenir un prototype rapide de quelque chose. Tout semblait bien jusqu'à ce que je trouvais que les personnages \ r trouvaient leur chemin dans un Mongo (je n'avais pas remarqué auparavant). Quelques points dans le code requis mystring.replace (/ \ r / gm, "") pour le nettoyer.


@joevallender Merci de pointer cela. Toute chance que vous puissiez encore vous souvenir de ce que vous avez dû faire et peut-il créer un problème pour cela? github.com/aaronsnoswell/csvjson.js/issues/new .


J'aurais soumis une demande de traction si je ne faisais pas à la volée, je vais laisser quelques notes dans la queue de problème maintenant



4
votes

Utilisez ce code pour le guide pour analyser le fichier CSV sur JSON ...

function processFiles(files) {
    var file = files[0];
    var reader = new FileReader();
    reader.onload = function (e) {
        var output = document.getElementById("fileOutput");
        var texto = e.target.result;
        csvJSON(texto);
    };
    reader.readAsText(file);
}
function csvJSON(csv) {
    var lines = csv.split("\n");
    var result = [];
    var headers;
    for (var i = 0; i < lines.length; i++) {
        headers = lines[i].split("\n");
    }
    var cont = 0;
    for (var i = 0; i < lines.length; i++) {

        var obj = {};
        var currentline = lines[i].split("\n");
        for (var j = 0; j < headers.length; j++) {
            obj[cont] = currentline[j];
        }
        cont++;
        result.push(obj);
    }

    return JSON.stringify(result); //JSON
}


0 commentaires

4
votes

papa parse est agréable pour cela. XXX

Téléchargement de ce CSV: xxx

Vous obtiendrez cette sortie dans la console: xxx


0 commentaires