نمایش نتایج 1 تا 9 از 9

نام تاپیک: سرعت اجرای برنامه

  1. #1

    سرعت اجرای برنامه

    با سلام
    دوستان یه یرنامه دارم که فایل txt به عنوان ورودی می گیره ، بعد با دستور if چک میکنه که هر رکورد ستون n چه کاراکتری و با توجه به اون ا.ن رکوردو توی textboxهای مختلف تخس میکنه.
    حالا مشکلی که دارم اینه که برای فایل txt که 10هزارتا رکورد داره حدود 15 دقیقه طول میکشه اینکارو انجام بده.واقعا این طبیعه؟؟؟من چند سال پیش همچین برنامه ای با Delphi6دیده بودم که زیر 30ثانیه اینکارو انجام می داد!!!!!!!!!!

  2. #2
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: سرعت اجرای برنامه

    سلام
    15 دقیقه که واقعن زیاد هست
    کدهاتون بزارید شاید حلقه یا دستوری گذاشتید که باعث این کندی میشه

  3. #3

    نقل قول: سرعت اجرای برنامه



    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using System.Data.SqlClient;

    namespace TextChar
    {
    public partial class Form1 : Form
    {
    int n1,i1,i2;



    public Form1()
    {

    InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {

    i2 = 0;
    OpenFileDialog op = new OpenFileDialog();



    // به دست اوردن فايل هاي داخل پوشه
    FolderBrowserDialog Fd = new FolderBrowserDialog();
    if (Fd.ShowDialog() == DialogResult.OK)
    {
    foreach (string a in System.IO.Directory.GetFiles(Fd.SelectedPath))
    {




    string inpath = System.IO.File.ReadAllText(a).ToString();

    n1 = inpath.Length;
    int n2 = n1 - 2;
    string inpath2 = inpath.Substring(0, n2);

    const char nline = '\n';
    char[] fasele = new char[] { nline };

    foreach (string subString in inpath2.Split(fasele))
    {
    string sb ="100"+ subString.ToString();
    sb = sb.Remove(10,3);

    if (sb.Substring(73, 4)=="0000")
    {

    txt15.Text += sb + " " + Environment.NewLine;
    i1 = i1 + 1;
    i2 = i2 + 1;

    }
    textBox2.Text = i1.ToString();
    }




    }
    }

    }

    private void button2_Click(object sender, EventArgs e)
    {


    if (txt15.Text != "")
    {
    StreamWriter sw = new StreamWriter("D://bedone_reshte.txt");
    sw.WriteLine(txt15.Text);
    sw.Close();

    textBox2.Text = "";
    txt15.Text = "";

    FMessegeBox.FarsiMessegeBox.Show("فایل های مورد نظر در درایو دی ساخته شد", "کاربر گرامی", FMessegeBox.FMessegeBoxButtons.Ok, FMessegeBox.FMessegeBoxIcons.Information);
    }
    else FMessegeBox.FarsiMessegeBox.Show("هیچ داده ای جهت ذخیره کردن وجود ندارد");
    }
    private void button3_Click(object sender, EventArgs e)
    {
    txt15.Text = "";
    textBox2.Text = "";
    }



    private void button4_Click(object sender, EventArgs e)
    {
    FMessegeBox.FarsiMessegeBox.Show("توجه داشته باشید که با هر بار زدن دکمه انتخاب فایل وانتخاب فایل جدید , می توانید مجددا فایل دیگری انتخاب و به مقادیر اضافه نمایید و فراموش نکنید که پس از انتخاب تمام فایل ها حتما داده ها را ذخیره نمایید", "راهنما");
    }



    }
    }





  4. #4

    نقل قول: سرعت اجرای برنامه

    کد شما رو ندیدیم ولی شما فایل رو مثل یه انباری در نظر بگیرید که همه وسایل رو در هم و بر هم ریختی اونجا! اینطوری سرعت پیدا کردن وسایل خیلی کم میشه. درست؟
    منظورم ساختار فایلتونه! فایل txt خالی که مجبور باشید 10 هزار رکورد استخراج کنید حکم همچین انباری رو داره. توصیه ام استفاده از ساختار xml و استفاده از linq to xml برای استخراج ستونهای مورد نظر هستش ...

    به خاطر اینکه صورت مسئله رو پاک نکرده باشم(استفاده از فایل txt خالی) یه گوگل زدم اینجا رو پیدا کردم که با 9 روش یه فایل 16 گیگ با 4 میلیون و خورده ای رکورد رو خونده.

    موفق باشید

  5. #5
    کاربر دائمی آواتار CsharpNevisi
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    تهران
    پست
    1,489

    نقل قول: سرعت اجرای برنامه

    چرا از ایکس.ام.ال استفاده نمیکنی ؟؟؟؟

  6. #6

    نقل قول: سرعت اجرای برنامه

    خوب اگر بلد بودم و از قبل می دونستم که xml انقد قویتره اینکارو می کردم.
    حالا سوالم اینه که اگه با استفاده از xml این مشکلاحل می شه برم دنبال یادگیریش!!!!!!!!!!!!

  7. #7
    کاربر دائمی آواتار CsharpNevisi
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    تهران
    پست
    1,489

    نقل قول: سرعت اجرای برنامه

    ایکس ام ال یه سری نود ها داره که شبیه به تگ های اچ.تی.ام.ال هست ... !!!
    فک کنم با ایکس ام ال کارت سریعتر پیش بره چون اطلاعات توش طبقه بندی میشه ... !!!

  8. #8

    نقل قول: سرعت اجرای برنامه

    ممنون از راهنماییتون
    فقط یه سوال اخر که الان با کدهایی که بالا گذاشتم طبیعیه همون قد که گفتم طول بکشه؟؟؟؟؟؟؟؟؟؟؟؟

  9. #9

    نقل قول: سرعت اجرای برنامه

    علت مدت زمان زیاد ، بهینه نبودن کدهاتون هست(نباید مدام اطلاعات رو به تکست باکس اضافه کنید بلکه از یک متغیر استفاده کنید و در آخر به تکست باکس بدید). بهتره پروژه رو قرار بدید و یا فایل حاوی رکوردها رو بزارید و بگید چه چیزی رو میخوای استخراج کنی.

تاپیک های مشابه

  1. کند شدن سرعت اجرای برنامه های دات نت
    نوشته شده توسط iekrang در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: دوشنبه 14 فروردین 1385, 22:30 عصر
  2. سرعت اجرای برنامه به چیزهایی بستگی داره؟
    نوشته شده توسط شاپرک در بخش Access
    پاسخ: 3
    آخرین پست: شنبه 26 آذر 1384, 10:05 صبح
  3. آیا تعداد کنتریهای Ado با سرعت اجرای برنامه ارتباط داره؟
    نوشته شده توسط oghab در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 4
    آخرین پست: سه شنبه 22 آذر 1384, 15:55 عصر
  4. مشکل سرعت اجرای برنامه
    نوشته شده توسط ali_abbasi22145 در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: چهارشنبه 28 بهمن 1383, 13:48 عصر
  5. کار کردن با یک یا چند تایمر و سرعت اجرای برنامه
    نوشته شده توسط س.حمیدیانفر در بخش Foxpro
    پاسخ: 1
    آخرین پست: جمعه 28 شهریور 1382, 19:24 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •