قراءة وكتابة البتات إلى الملفات النصية في جافا

StackOverflow https://stackoverflow.com/questions/3887090

  •  28-09-2019
  •  | 
  •  

سؤال

أحاول تنفيذ بعض خوارزميات الضغط ، وأحتاج إلى التعامل مع البتات في Java.

ما أحتاج إلى القيام به هو أنه عندما أكتب القيمة 1 ثم القيمة 2 ، يتم تخزين هذه الأرقام في الملف كبوت ، وبالتالي فإن حجم الملف سيكون 1 بايت بدلاً من 2 ، حيث يتم تخزين 1 في 1 بت و 2 تخزين في 2 بت.

هل هو ممكن؟ شكرا جزيلا

هل كانت مفيدة؟

المحلول

جميع أساليب الإدخال/الإخراج لها بايت كأدنى تفريغ. يمكنك كتابة أجزاء ، ولكن عليك أن تحزمها في بايت بنفسك. ربما يكون المخزن المؤقت ببايت واحد تكتبه إلى الملف بمجرد ملءه سيكون مناسبًا.

لاحظ أيضًا أنه لا توجد طريقة لمعرفة طول الملف في البتات (لا تعرف ما إذا كانت البايت الأخير "ممتلئ"). لذلك يحتاج طلبك إلى الاعتناء بذلك بطريقة أو بأخرى.

يمكنك أيضًا Google لـ "bitOutputStream" ، والتي يوجد منها عدد قليل منها ، وإن لم تكن في المكتبات شائعة جدًا. ربما مجرد استخدام واحد من هؤلاء.

أخيرًا ، لن يكون الملف الذي ستقوم بإنشائه ملف "نص" ، سيكون ثنائيًا جدًا (أكثر من المعتاد ...)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top