Возможно перемещать содержание архива JSON .txt?

Я имею несколько архивов .txt равно по отношению к этому содержанию

Содержание:

0 69 164
0 71 117
0 73 84
0 79 80
0 82 83
0 82 115
0 83 154
0 84 48
1 69 104
1 71 100
1 73 83
1 79 82
1 82 121
1 83 117
1 84 46
2 69 204
2 71 94
2 73 85
2 79 102
2 82 88
2 82 147
2 83 87
2 84 42

Я хочу переместить это JSON, с ada колонна с различными полями, продолжая формат:

'[{"user":"0","tecla":"69","time":"164"}, ... ]'

Могут?

1
задан 17.10.2016, 05:41
4 ответа

используя только договоренности договоренностей:

, если изменчивая у текста есть этот txt, может делать это себе:

var arreglo = texto.split(/\r?\n/).map(function(linea){
    return linea.split(' ');
};
var arregloJson = JSON.stringify(arreglo);

Таким образом договоренность равна в:

[[0, 69, 164], [0, 71, 117], etc... ]

и arregloJson он равен string JSONeado :

"[[0, 69, 164], [0, 71, 117], etc... ]"

используя объект segГєn второй комментарий

var arreglo = texto.split(/\r?\n/).map(function(linea){
    var numeros = linea.split(' ');
    return {user: numeros[0], tecla: numeros[1], time: numeros[2]};
};
var arregloJson = JSON.stringify(arreglo);

замечаний:

  1. split(/\r?\n/) использует одну expresiГіn регулировать, что он отделяет так lГ-neas Linux (отделенные \n) как lГ-neas Windows (отделенные \r\n)
  2. cГіdigo предложенный может быть использованным tambiГ©n стороны клиента во всех настоящих браузерах.
3
ответ дан 24.11.2019, 13:05

NodeJS присоединяет один módulo , чтобы читать lГ-neas:

const obj = {};
const fs = require('fs');
const lr = require('readline');

console.log(obj.length);
var lineReader = lr.createInterface({
  input: fs.createReadStream('dummy.txt')
});

lineReader.on('line', function (line) {
    let [ user, tecla, time ] = line.split(' ');
    obj[Object.keys(obj).length || 0] = { user, tecla, time };
});

lineReader.on('close', ()=>{
    fs.writeFile("dummy.txt", JSON.stringify(obj), function(err) {
        if(err) {
            return console.log(err);
        }
        console.log("Convertido a JSON");
    });

});
2
ответ дан 24.11.2019, 13:05
  • 1
    Быть должным и # 237; чтобы быть получающим ответом, но помечать и # 237; в который s и # 243; est и # 225; печатая объект, вместо того, чтобы это возвращать как JSON. – Mariano 17.10.2016, 05:45
  • 2
    Я издал с твоим recomendaci и # 243; n! =) – Jose Hermosilla Rodrigo 17.10.2016, 06:23

Эта serГ - в способ, получив заблаговременно контент .txt и сохраняя это в string:

var str = "0 69 164\n0 71 117\n0 73 84\n0 79 80\n0 82 83";
var lines = str.split("\n");
var data_json = [];
var tmp;

for(var index in lines){
	tmp = lines[index].trim().split(" ");
	data_json.push({
		user : tmp[0],
		tecla : tmp[1],
		time : tmp[2]
	});
}
console.log(data_json);
1
ответ дан 24.11.2019, 13:05

я создал эту функцию для файла csv, для текстового файла он будет равен...

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
1
ответ дан 24.11.2019, 13:05