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

السؤال

نشر

أقوم بكتابة 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"
}

المصدر

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...