我必须使用perl从MongoDB中检索.xls文件并存储在我的主目录中。我的文件存在于名为fs.cr_attachment.files的集合中,其对应的块名称为fs.cr_attachment.chunks。
任何人都可以指导我使用GridFS有用的代码片段。但是我知道使用Excel :: Writer :: XLSX模块写入Excel。
下面是我用于使用GridFS从MongoDB检索.docx和.txt文件的代码片段:
#!/usr/bin/env perl
use strict;
use MongoDB::Connection;
use mygrid::GridFS;
use IO::File;
use Data::Dumper;
use File::Util;
my $conn = MongoDB::Connection->new(
host => 'xyz',
username => 'guest_user',
password => '54@readme',
db_name => 'my_test_db'
);
my $db = $conn->my_test_db;
bless $db, 'MongoDB::Database';
my $fs = mygrid::GridFS->new(_database => $db, prefix => 'fs.cr_attachment');
my $filename = 'test.txt';
my $file_written = 'test.txt';
my $attachment = $fs->get($filename);
my $dirname='/home/main_dir/mongodb_test/';
my $filepath = $dirname . $file_written;
my $fh = IO::File->new($filepath,'w');
my $file = $fs->find_one({"filename" => $filename});
$file->print($fh);