2014-01-15 3 views
0
String.prototype.splitCSV = function(sep) { 
    for (var foo = this.split(sep = sep || ","), x = foo.length - 1, tl; x >= 0; x--) { 
    if (foo[x].replace(/"\s+$/, '"').charAt(foo[x].length - 1) == '"') { 
     if ((tl = foo[x].replace(/^\s+"/, '"')).length > 1 && tl.charAt(0) == '"') { 
     foo[x] = foo[x].replace(/^\s*"|"\s*$/g, '').replace(/""/g, '"'); 
     } else if (x) { 
     foo.splice(x - 1, 2, [foo[x - 1], foo[x]].join(sep)); 
     } else foo = foo.shift().split(sep).concat(foo); 
    } else foo[x].replace(/""/g, '"'); 
    } return foo; 
}; 

이 코드는 csv 문자열을 배열로 변환합니다. 내 질문은 배열에 xls 및 tsv 문자열을 변환하는 방법?xls JavaScript의 문자열 배열

+0

javascript 태그를 추가해야 할 수도 있습니다. 적절한 코드 세그먼트로 – Fallenreaper

+0

@ user3178816 링크가 작동하지 않습니다. – agershun

답변

1

당신은 배열에 CSV 및 TSV 문자열을 변환 할 수 있습니다 Alasql의 CSV 파서 볼 수 있습니다 :

  • CSV and TSV parsers code (죄송합니다, 나는 그녀 때문에 크기의 모든 코드를 넣을 수 없습니다)

또는 Alasql을 사용하여 CSV, TSV, XLS 또는 XLSX 파일의 데이터를 자바 스크립트로 직접로드 할 수 있습니다.

alasql('SELECT * FROM XLSX("mydata.xlsx")',[], function(res){ 
    // do something 
}); 

alasql('SELECT * FROM TSV("mydata.tsv", {headers:true})',[], function(res){ 
    // do something 
});