CSV 파일을 일반 TXT 형식으로 변환하는 것은 로깅이나 추가 처리를 위한 가벼운 데이터 추출이 필요할 때 자주 요구됩니다. Aspose.PDF Cloud SDK for Node.JS는 클라우드에서 파일 저장 및 형식 변환을 처리하는 강력한 라이브러리를 제공합니다. 이 가이드에서는 CSV를 업로드하고, TXT로 변환한 다음 async/await을 사용하여 로컬에 저장하는 단계별 구현을 확인할 수 있습니다. 예제는 또한 임시 파일 정리와 기본 오류 처리도 보여줍니다.
Node.JS에서 CSV를 TXT로 변환하는 방법 - 단계별
- 라이브러리를 설치하고 필요한 모듈을 가져오기: 패키지를 프로젝트에 추가하고 필요한 클래스를 요구합니다.
const fs = require('fs');
const path = require('path');
const { PdfApi } = require('asposepdfcloud');
- 자격 증명을 사용해 PdfApi 초기화:
PdfApi의 인스턴스를 클라이언트 ID와 비밀 키를 사용하여 생성합니다.
const clientId = 'YOUR_CLIENT_ID';
const clientSecret = 'YOUR_CLIENT_SECRET';
const pdfApi = new PdfApi(clientId, clientSecret);
- CSV 파일을 Aspose Cloud 스토리지에 업로드: 로컬 CSV를 클라우드로 전송하려면
uploadFile을 사용합니다.
const localCsvPath = path.resolve(__dirname, 'input.csv');
const remoteCsvPath = 'input.csv';
await pdfApi.uploadFile(remoteCsvPath, fs.createReadStream(localCsvPath));
- 업로드된 CSV를 TXT로 변환:
getDocument를 호출하고 대상 형식'txt'를 지정합니다.
const convertResponse = await pdfApi.getDocument(remoteCsvPath, null, 'txt');
- TXT 스트림을 로컬에 저장하고 정리: 응답 본문을 파일에 파이프하고 필요에 따라 원격 CSV를 삭제합니다.
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
PdfApi 클래스에 대한 자세한 내용은 API 참조를 참조하십시오.
전체 코드 예제: Aspose.PDF를 사용한 CSV를 TXT로 변환
다음 코드는 CSV 파일을 업로드하고 변환된 TXT 파일을 가져오는 전체 워크플로를 보여줍니다.
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();
참고: 이 코드 예제는 핵심 기능을 보여줍니다. 프로젝트에서 사용하기 전에 파일 경로와 구성 값을 실제 환경에 맞게 업데이트하고, 모든 필수 종속성이 올바르게 설치되었는지 확인하며, 개발 환경에서 충분히 테스트하십시오. 문제가 발생하면 공식 문서를 참조하거나 지원 팀에 문의하십시오.
cURL을 사용하여 CSV 파일을 TXT로 변환
REST API를 직접 사용하여 동일한 변환을 수행할 수 있습니다. 아래 단계에서는 액세스 토큰을 얻고, CSV를 업로드하고, 변환을 요청하고, 결과 TXT 파일을 다운로드하는 방법을 보여줍니다.
- 액세스 토큰 가져오기
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"
- 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
- 업로드된 CSV를 TXT로 변환
curl -X GET "https://api.aspose.cloud/v3.0/pdf/input.csv?format=txt" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.txt
- 원격 CSV 파일 삭제 (옵션)
curl -X DELETE "https://api.aspose.cloud/v3.0/pdf/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
전체 매개변수 목록은 공식 API 문서를 참조하십시오.
설치 및 구성 Aspose.PDF Cloud SDK for Node.JS
npm을 사용하여 라이브러리를 프로젝트에 추가하고 유효한 Aspose Cloud 계정이 있는지 확인하십시오.
npm install asposepdfcloud
패키지는 릴리스 페이지에서 직접 다운로드할 수도 있습니다. 이 라이브러리는 Node.js 12 이상과 활성 Aspose Cloud 구독이 필요합니다.
CSV에서 TXT 작업을 위한 Aspose.PDF Cloud SDK의 주요 기능
- 클라우드 스토리지 통합 - 파일이 Aspose Cloud에 저장되어 로컬 디스크 제한이 없습니다.
- 실시간 변환 -
getDocument메서드는 스트림을 반환하여 중간 파일 없이 즉시 처리할 수 있습니다. - Async/await 지원 - 모든 작업이 프로미스를 반환하므로 최신 Node.JS 코드베이스에 자연스럽게 맞습니다.
- 스트리밍 I/O - 업로드와 다운로드가 스트리밍되어 대용량 CSV 파일의 메모리 사용량을 낮게 유지합니다.
- 포괄적인 형식 지원 - TXT 외에도 동일한 API로 PDF, DOCX, HTML 등으로 변환할 수 있습니다.
CSV를 TXT로 변환 옵션 세부 조정
기본 변환은 대상 형식만 있으면 되지만, 저장소 이름이나 폴더 위치와 같은 추가 매개변수로 요청을 사용자 지정할 수 있습니다. getDocument 메서드는 folder 인수(예제에서는 null로 설정)와 사용자 지정 저장소를 사용하는 경우 storage 인수를 허용합니다.
스토리지 이름을 지정하는 예시 (주 흐름에서 이미 사용된 코드 스니펫):
const convertResponse = await pdfApi.getDocument(remoteCsvPath, null, 'txt');
전체 선택적 매개변수 목록은 API 참조를 참조하십시오.
결론
Node.JS에서 CSV를 TXT로 변환하는 작업은 Aspose.PDF Cloud SDK for Node.JS를 사용하면 간단해집니다. 이 라이브러리는 인증, 클라우드 스토리지 및 스트리밍 변환을 처리하여 비즈니스 로직에 집중할 수 있게 해줍니다. 제품 페이지에서 가격 세부 정보를 검토하고, 생산 환경으로 전환하기 전에 평가용으로 임시 라이선스 페이지에서 임시 라이선스를 얻으세요. 이 가이드의 코드와 cURL 예제를 사용하면 CSV를 TXT로 변환하는 기능을 모든 Node.JS 애플리케이션에 빠르고 안정적으로 통합할 수 있습니다.
FAQs
Node.JS에서 Aspose.PDF를 사용하여 CSV를 TXT로 변환하려면 어떻게 해야 하나요?
라이브러리를 사용해 CSV를 업로드하고, 'txt' 형식으로 getDocument를 호출한 다음, 응답을 로컬 파일로 스트리밍합니다. 위의 전체 코드 예제에 각 단계가 표시되어 있습니다.
라이브러리는 어떤 인증 방식을 사용합니까?
클라이언트 ID와 클라이언트 시크릿을 제공하세요; 라이브러리는 OAuth 토큰을 자동으로 얻어 각 요청에 포함합니다.
변환이 대용량 파일을 효율적으로 처리할 수 있나요?
예. 업로드와 다운로드 모두 스트리밍 방식이므로 전체 내용을 메모리에 로드하지 않고도 대용량 CSV 파일을 처리할 수 있습니다.
테스트용 임시 라이선스는 어디서 얻을 수 있나요?
임시 라이선스는 임시 라이선스 페이지에서 확인할 수 있습니다.