MongoDB मैनुअल से:पर्ल और MongoDB बाइनरी डेटा
By default, all database strings are UTF8. To save images, binaries, and other non-UTF8 data, you can pass the string as a reference to the database.
मैं पृष्ठ प्राप्त कर रहा हूँ और बाद में प्रसंस्करण के लिए सामग्री को संग्रहीत करना चाहते हैं।
- मैं, मेटा चारसेट पर भरोसा नहीं कर सकते क्योंकि कई पेज UTF8 सामग्री है, लेकिन गलत तरीके से iso-8859-1 या इसी तरह
- तो
Encode
उपयोग नहीं कर सकते (प्रारंभिक चारसेट पता नहीं है) की घोषणा
sub save {
my ($self, $ok, $url, $fetchtime, $request) = @_;
my $rawhead = $request->headers_as_string;
my $rawbody = $request->content;
$self->db->content->insert(
{ "url" => $url, "rhead" => \$rawhead, "rbody" => \$rawbody }) #using references here
if $ok;
$self->db->links->update(
{ "url" => $url },
{
'$set' => {
'status' => $request->code,
'valid' => $ok,
'last_checked' => time(),
'fetchtime' => $fetchtime,
}
}
);
}
:
मेरे कोड का टुकड़ा के लिए सामग्री बस as flow of bytes
(बाइनरी डेटा) की दुकान चाहते हैं
Wide character in subroutine entry at /opt/local/lib/perl5/site_perl/5.14.2/darwin-multi-2level/MongoDB/Collection.pm line 296.
यह केवल जगह है जहाँ मैं डेटा भंडारण है: 10
लेकिन त्रुटि मिलती है।
प्रश्न: मोंडो डीबी में स्टोर बाइनरी डेटा का एकमात्र तरीका उन्हें एन्कोड करता है उदा। बेस 64 के साथ?
यदि आप मैन्युअल में दिए गए नमूने में '$ कच्चेहेड 'और' $ rawbody' 'सेट करते हैं, तो यह वही चेतावनी देगा (यानी, \" \ xFF \ xFE \ xFF "')? – raina77ow