البرمجة

كيفية عرض البيانات بتنسيق جيد في C++

بهذا الكود، يمكنك تنسيق إخراج البيانات بحيث تظهر تحت كل فئة بشكل مناسب. يمكنك استخدام مساحات فارغة (spaces) لضبط المسافات بين العناصر. في هذا السياق، يمكنك تجربة تعديل الكود بالشكل التالي:

cpp
FILE *fp; fp = fopen("Records.txt","r"); cout << left << setw(12) << "Category" << setw(8) << "ID" << setw(20) << "Name" << setw(20) << "Author" << setw(10) << "Quantity" << setw(8) << "Price" << setw(8) << "Rack" << endl << endl; while (fread(&b, sizeof(b), 1, fp) == 1) { cout << left << setw(12) << b.category << setw(8) << b.id << setw(20) << b.name << setw(20) << b.author << setw(10) << b.quantity << setw(8) << b.price << setw(8) << b.rackno; cout << endl << endl; } fclose(fp);

هذا الشكل يستخدم setw() لتعيين عرض كل عمود، و left لضمان أن تكون البيانات محاذاة إلى اليسار. يمكنك تعديل القيم في setw() لضبط العرض والمسافات كما تشاء.

المزيد من المعلومات

إذا كنت تبحث عن المزيد من المعلومات حول كيفية تنسيق النص بشكل أفضل، يمكنك استخدام المكتبة في C++ لمساعدتك في ذلك. على سبيل المثال، يمكنك استخدام setw() لتعيين عرض العمود، و setfill() لتعيين الحرف الذي يملأ المساحات الفارغة. كما يمكنك استخدام std::left و std::right لمحاذاة النص إلى اليسار واليمين على التوالي. قد تحتاج أيضًا إلى استخدام std::fixed للتحكم في عرض الأرقام العشرية. إليك مثالًا محتملاً:

cpp
#include #include #include // Assuming BOOK is defined somewhere int main() { FILE *fp; fp = fopen("Records.txt","r"); std::cout << std::left << std::setw(12) << "Category" << std::setw(8) << "ID" << std::setw(20) << "Name" << std::setw(20) << "Author" << std::setw(10) << "Quantity" << std::setw(8) << "Price" << std::setw(8) << "Rack" << std::endl << std::endl; while (fread(&b, sizeof(b), 1, fp) == 1) { std::cout << std::left << std::setw(12) << b.category << std::setw(8) << b.id << std::setw(20) << b.name << std::setw(20) << b.author << std::setw(10) << b.quantity << std::setw(8) << std::fixed << std::setprecision(2) << b.price << std::setw(8) << b.rackno; std::cout << std::endl << std::endl; } fclose(fp); return 0; }

هذا المثال يظهر كيف يمكنك استخدام std::setprecision(2) لتحديد عدد الأرقام العشرية للأسعار، و std::fixed لإظهار الأرقام بشكل ثابت. تحتاج إلى تضمين في البداية لاستخدام هذه الوظائف.

مقالات ذات صلة

زر الذهاب إلى الأعلى

المحتوى محمي من النسخ !!