N/compress Module Script Sample

The following script sample demonstrates how to use the features of the N/compress module.

Compress and Decompress a File

The following sample compresses and decompresses a file.

Note:

This sample script uses the require function so you can copy it into the SuiteScript Debugger and test it. You must use the define function in an entry point script (a script you attach to a script record and deploy). For more information, see SuiteScript 2.x Script Basics SuiteScript 2.0 Script Basics and SuiteScript 2.x Script Types SuiteScript 2.0 Script Types.

            require(['N/compress', 'N/file'], function(compress, file) {
    var unsavedTxtFile = file.create({
        fileType: 'PLAINTEXT',
        name: 'file.txt',
        contents: 'This is a sample content. This is a sample content. This is a sample content. This is only a sample.'
    });

    log.debug('Name, size, and contents of the original, uncompressed file are: ');
    log.debug('Name: ' + unsavedTxtFile.name);
    log.debug('Size: ' + unsavedTxtFile.size + 'b');
    log.debug('Contents: ' + unsavedTxtFile.getContents());

    // gzip the file with max compression (level = 9)
    var gzippedFile = compress.gzip({
        file: unsavedTxtFile,
        level: 9
    });

    log.debug('Name, size, and contents of the gzipped file are: ');
    log.debug('Name: ' + gzippedFile.name);
    log.debug('Size: ' + gzippedFile.size + 'b');
    log.debug('Contents: ' + gzippedFile.getContents().substring(0, 100));

    // gunzip the file
    var gunzippedFile = compress.gunzip({
        file: gzippedFile
    });
    
    log.debug('Name, size, and contents of the gunzipped file are: ');
    log.debug('Name: ' + gunzippedFile.name);
    log.debug('File size: ' + gunzippedFile.size + 'b');
    log.debug('Contents: ' + gunzippedFile.getContents());
}); 

          

The following sample creates a ZIP file.

Note:

This sample script uses the require function so you can copy it into the SuiteScript Debugger and test it. You must use the define function in an entry point script (a script you attach to a script record and deploy). For more information, see SuiteScript 2.x Script Basics SuiteScript 2.0 Script Basics and SuiteScript 2.x Script Types SuiteScript 2.0 Script Types.

          require(['N/compress', 'N/file'], function(compress, file) {
    // load/create files to be archived
    var binaryFile = file.load({
        id: 200
    });
    var textFile = file.create({
        name: 'file.txt',
        fileType: 'PLAINTEXT',
        contents: 'This is sample content.'
    });

    // create an archive as a temporary file object
    var archiver = compress.createArchiver();
    archiver.add({
        file: binaryFile
    });
    archiver.add({
        file: textFile,
        directory: 'txt/'
    });
    var zipFile = archiver.archive({
        name: 'myarchive.zip'
    });

    // save the archive to file cabinet
    zipFile.folder = 123;
    zipFile.save();
}); 

        

General Notices