Avatar ·

كيف تقرأ ملفًا كاملاً في متغير نصي في Go؟

مرحبًا! لقد بدأت للتو في تعلم Go وواجهت مهمة تبدو بسيطة: أحتاج إلى قراءة محتويات ملف نصي بالكامل في متغير من نوع `string`. في لغات أخرى، يتم ذلك بوظيفة واحدة، لكن في Go شعرت بالارتباك. حاولت بهذه الطريقة: ```go package main import ( "fmt" "os" ) func main() { file, err := os.Open("data.txt") if err != nil { fmt.Println("خطأ في الفتح:", err) return } // وماذا بعد؟ كيف أحصل على النص؟ file.Close() } ``` رأيت أن هناك حزمة `ioutil`، لكن في الإصدارات الأخيرة من Go يبدو أنها deprecated. حاولت القراءة عبر `bufio` — حصلت على سطر واحد فقط. كما جربت `os.ReadFile`، لكنني لست متأكدًا من صحته. أرشدني إلى الطريقة الصحيحة والبديهية لقراءة ملف كامل في نص في Go الحديث (1.16+). أريد فهم الفرق بين `ioutil.ReadFile` و `os.ReadFile` و `bufio`. المهم أن يكون الحل بسيطًا وموثوقًا، دون حركات زائدة. شكرًا مقدمًا! <<>>

الأساس