Avatar ·

كيفية قراءة ملف كامل في متغير نصي في Go

مرحبًا بالجميع! لقد بدأت للتو في تعلم Go وواجهت مهمة بسيطة للوهلة الأولى — قراءة محتويات ملف نصي في متغير نصي. في لغات أخرى (مثل Python) يتم ذلك في سطر واحد، لكن في Go شعرت بالارتباك. لدي ملف `data.txt` موجود بجانب الملف التنفيذي. أريد الحصول على محتوياته كـ `string`. إليك ما جربته: ```go package main import ( "fmt" "os" ) func main() { file, err := os.Open("data.txt") if err != nil { fmt.Println(err) return } // وماذا بعد؟ كيف أقرأ كل المحتويات؟ } ``` أرى أن `os.Open` يُرجع `*os.File`، لكني لا أفهم كيف أحصل منه على نص. جربت القراءة بايتًا بايت عبر `file.Read(buf)`، لكني بحاجة لمعرفة حجم المخزن المؤقت مسبقًا، وقد يكون الملف كبيرًا. كما سمعت عن حزمة `bufio`، لكني لست متأكدًا من أنها تحل مشكلتي بالكامل. أرجو إرشادي إلى الطريقة الصحيحة والفعالة لقراءة ملف كامل في نص؟