PDA

View Full Version : سوال: نشان دادن اطلاعات فایلهای text



EHSAN_7417
جمعه 16 بهمن 1388, 17:56 عصر
سلام به همه ی برنامه نویسان درجه 1 !!!
من یک پوشه دارم که حدود 1000 تا فایل text توشه!
میخوام یه برنامه بنویسم که یک text box داشته باشه و با نوشتن یک کلمه داخلش بتونه توی پوشه ای که گفتمو سرچ کنه !!
لازم به ذکره که نمیخوام اسم فایل ها رو پیدا کنه بلکه باید داخل اون 1000 تا فایل رو یکی یکی بگرده و اگر کلمه را پیدا کرد اسم فایل رو بهم بگه و نشونم بده!!!
فرم باید اینارو داشته باشه :
1 - text box برای نوشتن کلمه مورد نظر
2 - list box برای نشان دادن موارد یافت شده
3 - commanod برای شروع جستوجو
4 - یه جایم برای ورود آدرس پوشه داشته باشه ( input box )
ببینم چه کاره اید :چشمک:

xxxxx_xxxxx
جمعه 16 بهمن 1388, 19:24 عصر
سلام،
کار ساده ای هست، شما شروع کنید، ما هم همکاری...
هرجا به مشکل برخوردید برنامه اینجا قرار بدید تا اصلاح شه.

موفق باشید/

EHSAN_7417
جمعه 16 بهمن 1388, 20:06 عصر
ُسلام
ممنون اما من این تاپیکو گذاشتم تا بقیه کمکم کنن چون خودم نوشتم اما کار نمیده نمیدونم کجاش اشکال داره!!!

xxxxx_xxxxx
جمعه 16 بهمن 1388, 23:12 عصر
سلام،
خب همون چیزی که نوشتید رو اینجا بزارید تا بررسی بشه و مشخص بشه که مشکل کجاست.

اینطوری شما چه کمکی می خواید؟ ما که نمی دونیم شما کجا مشکل دارید! تو شناسایی فایل ها؟ تو خواندن فایل ها؟ تو جستجو در محتوای فایل ها؟ کجا؟

توجه کنید که درخواست پروژه ممنوع هست.

unit001
جمعه 16 بهمن 1388, 23:16 عصر
سلام.

یه چند تا راهنمایی :

1 - شما باید اول همه فایل ها رو بگردین مثل دستور Do While Loop

2 - باید فایل های پیدا شده رو بخونید (از اول تا آخر هر فایل رو) مثل دستور open YOURFILE for input

3 - هر وقت که همچین فایلی پیدا شد اسم اونو به لیست باکس اضافه کنید.

فعلا.

EHSAN_7417
یک شنبه 18 بهمن 1388, 00:57 صبح
سلام ممنون از اینکه پاسخ میدید
مشخصات فرم :
File list box , list box , command button , text box
تمام اسم ها داخل برنامه هم پیش فرض است
پروژه رو توی command نوشتم اما وقتی توی text box کلمه رو سرچ میکنم تمام فایلها توی list box قرار میگیرن و هیچ اتفاق دیگه ای هم نمی افته!!!!!

Dim temp As String
File1.Path = "adress folder"
For i = 0 To File1.ListCount - 1
DoEvents
Open File1.Path + "\" + File1.List(i) For Binary As #1
Get #1, , temp
If InStr(1, temp, Text1.Text) <> 0 Then
List1.AddItem File1.List(i)
End If
Close #1
Next

xxxxx_xxxxx
یک شنبه 18 بهمن 1388, 01:11 صبح
سلام،
بجای دستور زیر:

Get #1, , tempبنویسید:


temp = Input(LOF(1), 1)



اگر میخواید حتماً از طریق دستور Get این کارو انجام بدید، پیش نیازش این هست که به اندازه طول فایل در متغیر temp فضای خالی ایجاد کنید. به این شکل:


temp = Space(FileLen(File1.Path + "\" + File1.List(i)))
Get #1, , temp
خب، دیدید اگه مشکل رو با جزئیات مطرح کنید سریعتر به جواب می رسید.
موفق باشید/

DoctorJay
پنج شنبه 22 بهمن 1388, 18:33 عصر
توضیحات جناب xxxxx_xxxxx (http://barnamenevis.org/forum/member.php?u=46030) کارگشاست .
واقعا کار ساده ایه . ببین نیاز به چه چیزایی داری !!
1. لیست فایل ها
2.پرینت محتویات هر کدوم از فایلها توی یه لیست
3.چک کردن کلمه ی نوشته شده ( جستجو ) با محتویات استخراج شده بوسیله ی توابع یا کدهای جستجوی رشته که توی همین سایت وجود داره .

اگر درست متوجه پروژت شده باشم با این تعربف کارت راحت انجام میشه, به شرط خرج حوصله .

اینم کمکت خواهد کرد ( خواندن محتوای فایل متنی (؟؟؟؟) (http://barnamenevis.org/forum/showthread.php?t=99087))