الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مساعدة بخوص القرائه من ملف Text و طباعة مصفوفه بداخل ال Textbox

بدأه abeer Eng في 22 مارس 2009 · 9 رد · 1,121 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

اخواني اتمنى مساعدتي :(

في الاجابه على الثلاث الاسئله

1) في القرائه من ملف نصي باستخدام السي شارب

استخدمت كلاس StreamReader

و استخدمت دالة

ReadLine

لقرائه سطر من الملف

ولكن عندي مشكله :(

مثلا لو عندي شرط معين بحيث لو ما تحقق اقراء السطر الثاني

2) في مشروعي اقراء الملف و اخزنه داخل string

ولكن اريد اعادة ترتيب المكتوب داخل الملف بحيث ازيل كل المسافات او التاب الموجودة

فحاولت تخزين قيمة الـ string

بداخل مصفوفه من نوع charcter

لكن المشكله ما يطبع لي شي :(

 StreamReader SR = new StreamReader(path); 
			 Contents = SR.ReadToEnd(); 
			SR.Close(); 
			textBox1.Text=Contents;
			char[] messageletter = Contents.ToCharArray();
			for (int i = 1; i <= messageletter.Length; i++)
				if (messageletter == ' ' || messageletter == '\t')
				{
					messageletter = messageletter[i++];
				}
				else
				{
					textBox2.Text = messageletter.ToString();
				}

3) اخر سؤال كيف اقدر اجيب اسكي كود لقيمه معينه موجودة بالمصفوفه

مثلا "A

تمثيلها بالاسكي كود هو 65

كيف اقدر اكتب بدل 65 ما يقابلها بالبايت

صراحه لقيت كود بالنت بس ما قدرت افهمه

 Byte[] data = Encoding.ASCII.GetBytes(s);

اتمنى تساعدوني دورت كثير بالنت بس اكثر اللي القى اكود

و هذا اكبر منتدى عربي و انشاء القي احد يساعدني

تم تعديل هذه المشاركة بواسطة abeer Eng في 22 مارس 2009 في 15:32

#2

:wacko:

#3

السلام عليكــم ورحمـة الله وبركاتــه ،،

بالنسبة للسؤال الأول فأرجو التوضيح أكثر لأني لا أجد ما يحير فيه

السؤال الثاني :

أولا يمكنك كتابة الكود التالي والخطأ أنك لم تقم بكتابة +=

 StreamReader SR = new StreamReader(path);
		   string Contents = SR.ReadToEnd();
			SR.Close();
			textBox1.Text = Contents;
			char[] messageletter = Contents.ToCharArray();
			for (int i = 1; i <= messageletter.Length; i++)
				if (messageletter == ' ' || messageletter == '\t')
				{
					messageletter = messageletter[i++];
				}
				else
				{
					textBox2.Text += messageletter.ToString();
				}

أو يمكنك كتابة الكود التالي وهو أسرع وأقوى

  Contents = Contents.Replace(" ", "");
			Contents = Contents.Replace("\t", "");
			textBox2.Text = Contents;

بالنسبة للسؤال الثالث

 Convert.ToString(65, 2);

قولوا لا اله الا الله تفلحوا

ومن يبتغي غير الاسلام دينا فلن يقبل منه وهو في الاخرة من الخاسرين- صدق الله العظيم

#4

جزاك الله الف خير اخوي والله ما قصرت

بس باتعبك معي شوي

بالنسبه للسؤال الاول انا اقصد لما نقرى من ملف نصي بنستخد ReadLine عشان يقراء سطر سطر

لكن لو مثلا وضعت شرط

StreamReader SR = new StreamReader(path);
		   string Contents = SR.ReadLine();

و حسبت عدد الكلمات الموجوده في السطر بحيث لو كان عدد الكلمات الموجودة بالسطر اكبر من 80

انزل و اقراء السطر الثاني من نفس الملف

يعني يبدا يقراء الملف من جديد و يتجاهل السطر الاول و يصير يبدى من ثاني سطر

اتمنى اني وضحت الفكرة

وفيه سؤال صغيرون

Convert.ToString(65, 2);

هذا الكود يستخدم لتحويل الانظمه العديديه

يعني لو استبدلت الـ65 بـ 4

و الـ 2 بـ 8

راح يعطيني تمثيل الاربعه بالاوكتل

و هذي الطريقه هي نفسها المستخدمه في السادس عشر

 char  c = Contents;
				int unicodeValue = System.Convert.ToInt32(c);

هذا الكود لقيته ببرنامج يجيب الاسكي كود بس مو فاهمته

ياريت لو ما فيها كلافه توضح لي كيف اشتغل

و ليه حط المتغير char

ليه ما خلاه مصفوفه مثلا

ادري طولتها بس اعذرني :(

تم تعديل هذه المشاركة بواسطة abeer Eng في 22 مارس 2009 في 18:28

#5

هذه الدالتين لاظهار ما بداخل الRich text box وتحويله الى HEX


{
string se = tx.Text;
tx.Text = "";
foreach (char ch in se)
{
tx.Text += hex(ch);
}
}
string hex(char ch)
{
char[] hx = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
byte b = (byte)ch;
byte lb = (byte)(b & 0x0f);
byte hb = (byte)((b & 0xf0) >> 4);
string s = " ";
s += hx[hb];
s += hx[lb];
return s;
}
 private void hex1(object s, EventArgs e)

بالتوفيق

#6

السلام عليكــم ورحمـة الله وبركاتــه ،،

شكرا أخي على توضيح المطلوب من السؤال الأول

الجواب كالتالي

			StreamReader SR = new StreamReader(path);
		Start:
			if (SR.EndOfStream) return;
			string Contents = SR.ReadLine();
			if (SR.EndOfStream && Contents.Split(" ".ToCharArray()).Length > 5) goto Start;
			//Use the line vaild to your condtion

وضعت هنا الشرط أن تكون كلمات السطر أكبر من 5 وتستطيع وضع أي شرط اخر

بالنسبة لسؤال ال char

أولا يجب أن تعرف أن المتغير النصي عبارة عن مصفوفة من الchars أي أن Contents ترجع متغير من نوع char لأن Contents هي مصفوفة من ال chars

وأيضا يجب أن تعرف أن النوع int والنوع char أنواع قريبة من بعضها أي اذا كان عندك متغير من نوع char فبامكانك التعامل معه كأنه متغير من نوع int فمثلا الكود التالي صحيح 100%

 char c='c';
			int x = c * 10 + 6;
			char d = (char)10;

أرجو أن تكون الفكرة وصلت

قولوا لا اله الا الله تفلحوا

ومن يبتغي غير الاسلام دينا فلن يقبل منه وهو في الاخرة من الخاسرين- صدق الله العظيم

#7
wimaxmax كتب:

هذه الدالتين لاظهار ما بداخل الRich text box وتحويله الى HEX


{
string se = tx.Text;
tx.Text = "";
foreach (char ch in se)
{
tx.Text += hex(ch);
}
}
string hex(char ch)
{
char[] hx = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
byte b = (byte)ch;
byte lb = (byte)(b & 0x0f);
byte hb = (byte)((b & 0xf0) >> 4);
string s = " ";
s += hx[hb];
s += hx[lb];
return s;
}
 private void hex1(object s, EventArgs e)

بالتوفيق

جزاك الله خير اخوي

الRich text box بس

اول مرة اسمع بها

هي موجودة من ضمن الدوال بس صراحه مدري وش فايدتها

حاولت اجربها لقيتها مثل الـ textBox

بس ودي اعرف وش ميزتها عنه

#8

akramKamal

ما قصرت اخوي كفيت و وفيت :)

#9

richtextbox allows you to format text, open RTF formatted documents and view them as well as saving into those formats. Textboxts you cant really format them, its just only one font or 1 color or whatever, with an RTB you can format selected text or color certain text, change the font of text etc....

http://msdn2.microsoft.com/en-us/library/s...ichtextbox.aspx

its more advanced than a plain simple textbox

you can also tell it to detect url links automatically, a textbox doesn't do this. It's pretty much just like wordpad, if you have used it in Windows. You can create an entire rich text editor using the richtextbox control.

you can select text, insert images, change fonts, change colors, load and save richtext formats or plain text formats - you can't do it with a textbox except for the fonts but even then you can only have 1 font applied to on a textbox. You can also I believe find text in the richtextbox and a textbox does not have this feature

مع التحية

تم تعديل هذه المشاركة بواسطة wimaxmax في 24 مارس 2009 في 13:29

#10

really it best tool toolbox

than u wimaxmax

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…