File tree Expand file tree Collapse file tree 3 files changed +28
-16
lines changed Expand file tree Collapse file tree 3 files changed +28
-16
lines changed Original file line number Diff line number Diff line change @@ -5,15 +5,26 @@ module.exports = function(file) {
5
5
if ( path . extname ( file ) != '.csv' ) {
6
6
console . log ( "Invalid file. Files with extension .csv only." )
7
7
} else {
8
- fs . readFile ( file , function ( err , data ) {
9
- if ( err ) throw err ;
10
-
11
- var jsonData = [ ] ;
8
+ var data = fs . readFileSync ( file ) ;
9
+ return convertToJson ( data ) ;
10
+ }
11
+
12
+ function convertToJson ( data ) {
13
+ var jsonData = [ ] ;
12
14
13
- var formattedData = data . toString ( 'utf8' ) . split ( '\r\n' ) ;
14
- for ( var i = 0 ; i < formattedData . length ; i ++ ) {
15
- console . log ( formattedData [ i ] ) ;
15
+ var formattedData = data . toString ( 'utf8' ) . split ( '\r\n' ) ;
16
+ var keys = formattedData [ 0 ] . split ( '\t' ) ;
17
+
18
+ for ( var i = 1 ; i < formattedData . length ; i ++ ) {
19
+ var row = formattedData [ i ] . split ( '\t' ) ;
20
+ var obj = { } ;
21
+ for ( var j = 0 ; j < row . length ; j ++ ) {
22
+ obj [ keys [ j ] ] = row [ j ] ;
16
23
}
17
- } ) ;
24
+
25
+ jsonData . push ( obj ) ;
26
+ }
27
+
28
+ return JSON . stringify ( jsonData ) ;
18
29
}
19
30
}
Original file line number Diff line number Diff line change 1
- 0 Hello
2
- 1 World
3
- 2 This
4
- 3 Is
5
- 4 CSV
6
- 5 To
7
- 6 JSON
1
+ Number String
2
+ 0 Hello
3
+ 1 World
4
+ 2 This
5
+ 3 Is
6
+ 4 CSV
7
+ 5 To
8
+ 6 JSON
Original file line number Diff line number Diff line change 1
1
var csv2json = require ( '../csv2json' ) ;
2
2
3
- csv2json ( 'test/sample.csv' ) ;
3
+ console . log ( csv2json ( 'test/sample.csv' ) ) ;
You can’t perform that action at this time.
0 commit comments