اذهب إلى المحتوى
  • 0

كيف اضغط ملفات json

Dd Aa

السؤال

Recommended Posts

  • 0

بخصوص السؤال الاول فيمكنك التواصل مع الدعم من هنا.

أما بالنسبة لضغط ملفات الـ JSON فهنالك العديد من المواقع التي تقدم هذه الخدمة في حال كنت تريده ضغط ملف معين مرة واحدة فقط.

أما على السيرفر فيمكنك ضغط الملفات كالتالي في NodeJS :

ننزل brotli :

npm i brotli 
const brotli = require('brotli');
const fs = require("fs");
const path = require("path");

const compressed = brotli.compress(fs.readFileSync(path.join(__dirname, "india.json")), {
    mode: 0, // 0 = generic, 1 = text, 2 = font (WOFF2)
    quality: 11, // 0 - 11
    lgwin: 22 // window size
});

حيث استخدمنا المكتبة brotli.

ولفك الضغط :

const data = brotli.decompress(fs.readFileSync("compressed.bin"));
fs.writeFileSync(__dirname + "/decoded.json", data);

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يمكنك استخدام messagePack والتي تعمل على ضغط كائنات JSON وتقليل حجمها بشكل كبير من خلال ترميز خاص تقوم به على هذه الكائنات، كما أنها تتيح لك واجهة برمجية لتستطيع تضمينها في مشروعك بأي لغة برمجة تستخدمها. وتتمتع هذه المكتبة بحجم صغير جداً قد يصل إلى 2.4 kB فقط.

مثال باستخدام الجافاسكريبت:

// تعريف كائن يحوي أنماط مختلفة من البيانات
var sourceData = {
    number: 123,
    number2: -0.129,
    text: "Abc with Üñıçôðé and ユニコード",
    flag: true,
    list: [ 1, 2, 3 ],
    obj: { a: 1, b: "2", c: false, d: { a: 0, b: -1 } },
    time: Date.now()
};

// ترميز الكائن السابق أو ضغطه باستخدام المكتبة
var bytes = msgpack.serialize(sourceData);

// فك الترميز والحصول على الكائن الأصلي
var deserializedData = msgpack.deserialize(bytes);

يمكنك الاطلاع على كيفية تحميلها واستخدامها تبعاً للغة البرمجة التي تستخدمها من خلال الموقع الرسمي للمكتبة msgpak

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...