La conversion des fichiers CSV en format TXT simple est une exigence fréquente lorsque vous avez besoin d’extractions de données légères pour la journalisation ou un traitement ultérieur. Aspose.PDF Cloud SDK for Node.JS fournit une bibliothèque puissante qui gère le stockage des fichiers et la conversion de formats dans le cloud. Dans ce guide, vous verrez une implémentation étape par étape qui téléverse un CSV, le convertit en TXT et enregistre le résultat localement en utilisant async/await. L’exemple montre également le nettoyage des fichiers temporaires et la gestion basique des erreurs.
Comment convertir CSV en TXT avec Node.JS - Étape par étape
- Installez la bibliothèque et importez les modules requis : Ajoutez le package à votre projet et importez les classes nécessaires.
const fs = require('fs');
const path = require('path');
const { PdfApi } = require('asposepdfcloud');
- Initialisez le PdfApi avec vos identifiants : Créez une instance de
PdfApien utilisant votre ID client et votre secret.
const clientId = 'YOUR_CLIENT_ID';
const clientSecret = 'YOUR_CLIENT_SECRET';
const pdfApi = new PdfApi(clientId, clientSecret);
- Téléversez le fichier CSV vers le stockage Aspose Cloud : Utilisez
uploadFilepour transférer le CSV local vers le cloud.
const localCsvPath = path.resolve(__dirname, 'input.csv');
const remoteCsvPath = 'input.csv';
await pdfApi.uploadFile(remoteCsvPath, fs.createReadStream(localCsvPath));
- Convertir le CSV téléchargé en TXT : Appelez
getDocumentavec le format cible'txt'.
const convertResponse = await pdfApi.getDocument(remoteCsvPath, null, 'txt');
- Enregistrez le flux TXT localement et nettoyez : transmettez le corps de la réponse vers un fichier et supprimez éventuellement le CSV distant.
const localTxtPath = path.resolve(__dirname, 'output.txt');
const writeStream = fs.createWriteStream(localTxtPath);
await new Promise((resolve, reject) => {
convertResponse.body.pipe(writeStream);
convertResponse.body.on('error', reject);
writeStream.on('finish', resolve);
writeStream.on('error', reject);
});
await pdfApi.deleteFile(remoteCsvPath); // optional cleanup
Pour plus de détails sur la classe PdfApi, consultez la référence API.
Exemple complet de code : conversion CSV en TXT avec Aspose.PDF
Le code suivant montre le flux de travail complet, de l’importation d’un fichier CSV à la récupération du fichier TXT converti.
const fs = require('fs');
const path = require('path');
const { PdfApi } = require('asposepdfcloud');
// Replace with your actual Aspose PDF Cloud credentials
const clientId = 'YOUR_CLIENT_ID';
const clientSecret = 'YOUR_CLIENT_SECRET';
// Initialize the PdfApi instance
const pdfApi = new PdfApi(clientId, clientSecret);
// Paths (adjust as needed)
const localCsvPath = path.resolve(__dirname, 'input.csv');
const remoteCsvPath = 'input.csv'; // Path in Aspose Cloud storage
const localTxtPath = path.resolve(__dirname, 'output.txt');
async function convertCsvToTxt() {
try {
// 1. Upload the CSV file to Aspose Cloud storage
const uploadResponse = await pdfApi.uploadFile(remoteCsvPath, fs.createReadStream(localCsvPath));
if (uploadResponse.status !== 'OK') {
throw new Error(`Upload failed: ${JSON.stringify(uploadResponse)}`);
}
console.log('CSV file uploaded successfully.');
// 2. Convert the uploaded CSV to TXT format
const convertResponse = await pdfApi.getDocument(remoteCsvPath, null, 'txt');
if (!convertResponse.body) {
throw new Error('Conversion response does not contain a body stream.');
}
// 3. Save the converted TXT stream to a local file
const writeStream = fs.createWriteStream(localTxtPath);
await new Promise((resolve, reject) => {
convertResponse.body.pipe(writeStream);
convertResponse.body.on('error', reject);
writeStream.on('finish', resolve);
writeStream.on('error', reject);
});
console.log(`Conversion completed. TXT saved to ${localTxtPath}`);
// 4. (Optional) Clean up: delete the CSV file from cloud storage
const deleteResponse = await pdfApi.deleteFile(remoteCsvPath);
if (deleteResponse.status !== 'OK') {
console.warn(`Failed to delete remote CSV: ${JSON.stringify(deleteResponse)}`);
} else {
console.log('Remote CSV file deleted.');
}
} catch (error) {
console.error('An error occurred:', error.message);
}
}
// Execute the conversion
convertCsvToTxt();
Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour tous les chemins de fichiers et les valeurs de configuration pour qu’ils correspondent à votre environnement réel, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Convertir des fichiers CSV en TXT à l’aide de cURL
Vous pouvez réaliser la même conversion en utilisant directement l’API REST. Les étapes ci‑dessous montrent comment obtenir un jeton d’accès, télécharger le CSV, demander la conversion et télécharger le fichier TXT résultant.
- Obtenez un jeton d’accès
curl -X POST "https://api.aspose.cloud/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
- Téléverser le fichier CSV
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/csv" \
--data-binary @input.csv
- Convertir le CSV téléchargé en TXT
curl -X GET "https://api.aspose.cloud/v3.0/pdf/input.csv?format=txt" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.txt
- Supprimer le fichier CSV distant (optionnel)
curl -X DELETE "https://api.aspose.cloud/v3.0/pdf/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Pour une liste complète des paramètres, consultez la documentation officielle de l’API.
Installation et configuration Aspose.PDF Cloud SDK pour Node.JS
Ajoutez la bibliothèque à votre projet avec npm et assurez-vous de disposer d’un compte Aspose Cloud valide.
npm install asposepdfcloud
Vous pouvez également télécharger le package directement depuis la page de publication. La bibliothèque nécessite Node.js 12 ou une version supérieure et un abonnement actif à Aspose Cloud.
Principales fonctionnalités de Aspose.PDF Cloud SDK pour les tâches CSV vers TXT
- Intégration du stockage cloud - Les fichiers sont stockés dans Aspose Cloud, éliminant les contraintes du disque local.
- Conversion à la volée - La méthode
getDocumentrenvoie un flux, permettant un traitement immédiat sans fichiers intermédiaires. - Prise en charge async/await - Toutes les opérations renvoient des promesses, s’intégrant naturellement aux bases de code Node.JS modernes.
- E/S en streaming - Les téléchargements et téléversements sont en flux continu, maintenant une faible utilisation de la mémoire pour les gros fichiers CSV.
- Prise en charge complète des formats - En plus du TXT, la même API peut convertir en PDF, DOCX, HTML, et plus encore.
Affinement des options de conversion de CSV en TXT
Alors que la conversion de base ne nécessite que le format cible, vous pouvez personnaliser la requête avec des paramètres supplémentaires tels que le nom du stockage ou l’emplacement du dossier. La méthode getDocument accepte un argument folder (défini sur null dans l’exemple) et un argument storage si vous utilisez un stockage personnalisé.
Exemple de spécification d’un nom de stockage (extrait de code déjà utilisé dans le flux principal) :
const convertResponse = await pdfApi.getDocument(remoteCsvPath, null, 'txt');
Pour une liste complète des paramètres optionnels, consultez la référence API.
Conclusion
Convertir CSV en TXT dans Node.JS devient simple avec le Aspose.PDF Cloud SDK for Node.JS. La bibliothèque gère l’authentification, le stockage cloud et la conversion en streaming, vous permettant de vous concentrer sur la logique métier. N’oubliez pas de consulter les détails de tarification sur la page du produit et d’obtenir une licence temporaire depuis la page de licence temporaire pour l’évaluation avant de passer en production. Avec le code et les exemples cURL de ce guide, vous pouvez intégrer la conversion CSV en TXT dans n’importe quelle application Node.JS rapidement et de manière fiable.
FAQs
Comment convertir un CSV en TXT dans Node.JS en utilisant Aspose.PDF ?
Utilisez la bibliothèque pour télécharger le CSV, appelez getDocument avec le format 'txt', et diffusez la réponse vers un fichier local. L’exemple complet de code ci‑dessus montre chaque étape.
Quelle méthode d’authentification la bibliothèque utilise-t-elle ?
Fournissez votre ID client et votre secret client ; la bibliothèque obtient automatiquement un jeton OAuth et l’inclut dans chaque requête.
La conversion peut-elle gérer les gros fichiers efficacement ?
Oui. Le téléversement et le téléchargement sont diffusés en continu, de sorte que le processus fonctionne avec de gros fichiers CSV sans charger tout le contenu en mémoire.
Où puis-je obtenir une licence temporaire pour les tests ?
Une licence temporaire est disponible sur la page de licence temporaire.