50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

جستجوی یک عضو آرایه درون یک فایل متنی

سلام و عرض ادب خدمت کاربران

من با سی شارپ میخوام عناصر یک آرایه که متن هست رو درون یک فایل متنی جستجو کنم.بیشتر توضیح میدم

یک آرایه دارم که 2 تا عنصر داخلش هست عنصر اول کلمه "itpro" هست...بعد یک سری فایل متنی دارم. میخوام که این عنصر درون این فایلهای متنی جستجو بشه و اگه درون اون فایل بود اسمش رو بگه.همین

بنده کد نویسی قسمت گرفت آدرس فایلها رو انجام دادم، فقط کدی میخوام که بتونه عنصر اول آرایه رو درون فایلهای txt جتجو کنه و اگه بودش، اسم فایل رو بگه

پرسیده شده در 1396/02/24 توسط

3 پاسخ

1

سلام از این کد استفاده کنید

string path = "d:\\myFolder";
            var files=Directory.GetFiles(path);
پاسخ در 1396/02/24 توسط
0

سلام.ممنون از کدتون ولی من میخوام به آدرسی که کاربر وارد میکنه رو جستجو کنه...نه اینکه آدرس جستجو ثابت باشه...من با فولدر بروزر دیالوگ آدرس رو از کاربر دریافت میکنم و درون متغیر txtdir میریزم...میخوام که تمام فایلهای درون این آدرس جستجو بشه!!!

ممنونم و منتظر پاسخم

پاسخ در 1396/02/24 توسط
0

سلام به شما دوست عزیز

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

   static void Main(string[] args)
        {
            var containsFileList=new List<string>();
            var strings = new[] {"itpro", "website", "adeli"};
            var filePaths = new[] {"c:\\1.txt", "c:\\2.txt", "d:\\sd.txt"};
            foreach (var file in filePaths)
            {
                var fileContent = File.ReadAllText(file);
                if(strings.Any(a => fileContent.Contains(a)))
                    containsFileList.Add(file);
                   
            }
            foreach (var item in containsFileList)
            {
                Console.WriteLine(item);
            }
Console.ReadKey();
        }

در کد بالا یک آرایه از رشته ها داریم و یک آرایه از آدرس فایل ها که تک تک فایل ها را می خوانیم و توسط خط زیر

                if(strings.Any(a => fileContent.Contains(a)))

نگاه می کنیم ببینیم هیچکدام از عناصر آرایه داخل فایل هست یا خیر اگر یکی از عناصر داخل فایل بود نام فایل را در لیست قرار می دهیم.

حالا اگه بخواهید فقط ببینید که یک عنصر در فایل ها وجود دارد یا خیر این خط را باید به شکل زیر تغییر دهید.

if(fileContent.Contains(strings[0]))
پاسخ در 1396/02/24 توسط

پاسخ شما