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

ما الطريقة الصحيحة للكتابة في ملف json في روبي؟

TheProgrammer

السؤال

أقوم بكتابة hash في روبي وأريد أن أكتبه في ملف json في شكله الصحيح، هذه هي الشيفرة البرمجية التي كتبتها لفعل ذلك:

tempHash = {
    "key_a" => "val_a",
    "key_b" => "val_b"
}
fJson = File.open("public/temp.json","w")
fJson.write(tempHash)
fJson.close

وهذه هي محتويات ملف النتيجة:

key_aval_akey_bval_b

فما هي الطريقة الصحيحة لفعل ذلك؟

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

Recommended Posts

  • 0

للتعامل مع ملفات json في لغة روبي يمكنك استخدام مكتبة json فهي المكتبة صحيحة للتعامل معها.
سنقوم ببعض التعديلات في شيفرتك البرمجية حتى تعمل بالشكل المطلوب، فسنعدل على أول سطر الكتابة وسنحول hash المطلوب إلى Json عن طريق تابع to_json ومن ثم سنرتب المتغيرات قليلا وسنضيف do |f| إلى سطر فتح الملف كما في المثال التالي:

require 'json'
tempHash = {
    "key_a" => "val_a",
    "key_b" => "val_b"
}
File.open("public/temp.json","w") do |f|
  f.write(tempHash.to_json)
end

وسيكون شكل الناتج كالتالي(محتويات الملف):

{"key_a":"val_a","key_b":"val_b"}

كما يمكنك استخدام تابع JSON.pretty_generate للحصول على ناتج بشكل أفضل كما في المثال التالي:

{
    "key_a":"val_a",
    "key_b":"val_b"
}

المصدر

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

  • 0

في النسخ الأحدث من روبي أصبح بإمكانك إتمام ذلك (الأحدث من 1.8) بالشكل التالي:

File.write("public/temp.json",tempHash.to_json)

بالنسبة للنسخ الأقدم يمكن أيضًا إنجاز ذلك كما في الإجابة السابقة.

 

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

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...