تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 2 از 2

نام تاپيک: فایل ها در C#.NET

  1. #1
    اگه نباشه جاش خالی می مونه without_all's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    315

    پيش فرض فایل ها در C#.NET

    سلا م
    خدا قوت


    یه چنتا سوال در مورد file ها در C#.NET میخوام بدونم

    1- چه طوری یه record رو توی یه فایل بریزم و بخونم ؟(مثل ++C
    2- چه طوری یه شیء رو توی یه فایل بریزم و بخونم ؟(مثل ++C)
    3- چه طوری دو سوال بالا رو به صورت binary , ASCll انجام بدم؟
    4- pointer خوندن نوشتن رو چهطوری تشخیص بدم و قرار بدم؟

    خلاصه فایلها دیگه اگه PDF , E-Book ی چیزی هم بود عالی میشه


    با تشکر
    Woeful

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    1- چه طوری یه record رو توی یه فایل بریزم و بخونم ؟(مثل ++C
    خواندن و نوشتن رکوردی در دات نت صددرصد امکان پذیر است ولی توابع اماده و ساده ندارد ...
    در اصل با توجه به ظهور بانکهای اطلاعاتی تخصصی رابطه (مثل JET و SQLServer و Oracel و ...) دیگر نیازی به کار رکوردی نیست.
    من خودم یادم نمی آید چندین سال پیش اخرین بار فایلی را رکوردی خواندم و نوشتم!

    شما به سادگی میتوانید از یک فایل mdb یا mdf استفاده کنید و هر چه قدر هم سعی کنیدف نمیتوانید امکاناتی در حد mdb را هم خودتان کدنویسی کنید.
    با همین mdb به ظاهر درپیت با یک خط SQL-SELECT-WHERE ساده راحت میتوان از تمام اطلاعات استعلام و امار و... گرفت که ساده ترین دستور SQL است.

    مطلب بعدی هم ان است که امکانات سریالی باینری و XML دات نت خیلی قوی است و به راحتی میتوانید Collection ای از رکوردهایتان ایجاد کنید و کل Collection را یکجا در فایل سریالی یا دیسریالی کنید.

    =====

    بحرحال اگر بر کارکرد رکوردی واقعی مثل ++C اصرار دارید ...
    پیشنهاد میکنم اسمبلی Microsoft.VisualBasic.dll استفاده کنید.
    (Project->Add Reference->.Net)
    برخلاف نامش استفاده اش در C#.Net هم مشکلی ندارد.
    (
    Microsoft.VisualBasic.dll شامل تعداد زیادی از توابع و دستورالعملهای قدیمی و بعضاً منسوخ شده است که برای راحتی VB6 کارهای قدیمی در VB.Net در این فایل گنجاده شده است.
    )

    در فضای نام Microsoft.VisualBasic.FileSystem میتوانید متدهای خواندن و نوشتن رکوردی فایلها را پیدا کنید.

    2- چه طوری یه شیء رو توی یه فایل بریزم و بخونم ؟(مثل ++C)
    تاجایی که یادم می آید برخلاف برداشتی که متان شما میشود، اینکار چندان هم در ++C ساده نبوده و هموراه با مشکلات خاص خود همراه بود !!!
    ولی در دات نت خیلی راحت میتوانید از کلاس System.Runtime.Serialization.Formatters.Binary.Bin aryFormatter استفاده کنید.

    متد Serialize شی شما را در یک Stream (فایل و شبکه و دانلود و حافظه و...) ذخیره میکند.
    متد Deserialize هم برعکس متدقبلی شی شما را از یک Stream میخواند.

    3- چه طوری دو سوال بالا رو به صورت binary , ASCll انجام بدم؟
    اگر مقادیر متنی دارید که string است، هر کجا نیاز به تبدیل به آرایه بایتی باشد میتوانید از کدینگ های مختلف استفاده کنید:
    System.Text.Encoding.ASCII
    System.Text.Encoding.UTF8
    System.Text.Encoding.Unicode
    و...

    4- pointer خوندن نوشتن رو چهطوری تشخیص بدم و قرار بدم؟
    اگر فایل را به صورت Stream با کنید (کلاس System.IO.FileStream) خصیصه Position مکان نمای جاری داخل فایل خواهد بود که میتوانید بخوانید یا تغییرش دهید.

  3. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •