Package Exports
- zip_csv_to_json
- zip_csv_to_json/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (zip_csv_to_json) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
zip-to-json-converter
A Node.js package to extract CSV files from a ZIP archive and convert them into JSON format.
Installation
Install the package via NPM:
bash npm install zip-to-json-converter
Usage
Here’s a basic usage example of how to use the package :
const { processZipFile } = require('zip-to-json-converter');
// Example: Provide the path to the zip file containing CSV files (async () => { const zipFilePath = 'path_to_your_zip_file.zip'; // Replace with your ZIP file path try { const results = await processZipFile(zipFilePath);
results.forEach(result => {
console.log(`File: ${result.fileName}`);
console.log(`JSON Data:`, result.jsonPayload);
});} catch (error) { console.error("Error processing the zip file:", error); } })();
Parameters
zipFilePath: This is the path to the ZIP file that contains one or more CSV files. The package will extract the CSV files and convert them into JSON. Output The function will return an array of objects where each object represents a CSV file converted into JSON format. Each object contains: fileName: The name of the CSV file. jsonPayload: The JSON data that corresponds to the contents of the CSV file.
Example Output :
[ { "fileName": "data1.csv", "jsonPayload": [ { "Column1": "Value1", "Column2": "Value2" }, { "Column1": "Value3", "Column2": "Value4" } ] }, { "fileName": "data2.csv", "jsonPayload": [ { "ColumnA": "ValueA", "ColumnB": "ValueB" } ] } ]
API
processZipFile(zipFilePath) Description: Unzips a ZIP file containing CSV files, converts each CSV file to JSON, and returns the data as an array. Parameters: zipFilePath: Path to the ZIP file containing the CSV files. Returns: A promise that resolves to an array of objects with the properties fileName and jsonPayload.
Error Handling
If an error occurs during the extraction or conversion process, it will be caught and logged to the console:
try { const results = await processZipFile('path_to_your_zip_file.zip'); } catch (error) { console.error("Error processing the zip file:", error); }
License
This package is licensed under the ISC License. See the LICENSE file for more information.
Author
Shishir Pandey
Feel free to contact me at shishir18pandey@gmail.com for any inquiries or contributions.