PDA

View Full Version : ساختمان داده برای ذخیره انواع مختلف نوع داده ای



sadafmahjoobi
جمعه 09 فروردین 1392, 20:21 عصر
به نظر شما اساتید، از چه ساختمان داده ای برای ذخیره انواع مختلف داده ای مثل int و stringو byte و ... استفاده کنم؟

veniz2008
جمعه 09 فروردین 1392, 20:54 عصر
سلام.
در مورد سوالتون بیشتر توضیح بدید. دقیقا منظور و هدفتون رو توضیح بدید.

sadafmahjoobi
جمعه 09 فروردین 1392, 20:59 عصر
بله.من یه سری اطلاعات مثل شماره ملی، نام و نام خانوادگی و تصویر(که به صورت بایته) دارم و میخوام اینا رو در یه ساختمان داده ذخیره کنم. مشکل من فقط در مورد تصویره، چون اطلاعات دیگه رو به راحتی میتونم مثلا تو یه آرایه از نوع string ذخیره کنم

arash691
جمعه 09 فروردین 1392, 21:40 عصر
عکس رو در یک ارایه جداگانه ذخیره کنید که نوع اون ارایه از نوع byte هستش

sadafmahjoobi
جمعه 09 فروردین 1392, 21:55 عصر
این کارم انجام دادم ولی نشد

veniz2008
جمعه 09 فروردین 1392, 22:04 عصر
از یک ArrayList استفاده کنید. بصورت زیر :

// تبدیل عکس ذخیره شده در پیکچرباکس به بایت
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] pic_array = new byte[ms.Length];
ms.Position = 0;
ms.Read(pic_array, 0, pic_array.Length);

// ساخت لیست ارایه ای و اضافه کردن انواع مختلف داده ها به آن
ArrayList buf = new ArrayList();
buf.Add(TxtKalaName.Text);
buf.Add(10);
buf.Add(pic_array);

// خواندن عکس ذخیره شده در لیست آرایه ای و نمایش در یک پیکچر باکس دیگر
byte[] picture = (byte[])buf[2];
MemoryStream mms = new MemoryStream(picture);
mms.Seek(0, SeekOrigin.Begin);
pictureBox2.Image = Image.FromStream(mms);
نمیدونم دلیلتون برای این کار چیه ولی اگر این کارتون از سر اجبار نیست، از این روش استفاده نکنید و داده هاتون رو در دیتابیس ذخیره کنید.