PDA

View Full Version : کسی با فایلهای txt در دلفی کار کرده؟؟؟؟؟؟



Future
یک شنبه 06 آذر 1384, 15:40 عصر
سلام دوستان
من یک فایل با پسوند txt دارم . می خوام که یک رشته را داخل آن جستجو کنه اگه بود پاکش کند یا بجای آن ********** بگذاره در ضمن من نمی خواهم فایل را در memo یا مشابه آن وارد کنم
کد زیر را نوشتم ولی کار نمی کنه

var

myfile : TextFile;
name , name1 : String;

Leng :Cardinal;
UserName :PChar;
CamuterName :PChar;
found :Boolean;
begin
AssignFile(myFile, 'D:\Users.txt');
Reset(myfile);
repeat
Readln(myfile,name1);
if name1 = Name then name1 := 'XXXXXXXXXXXXXXXX'
until Eof(myfile);
CloseFile(myfile);

Kamyar.Kimiyabeigi
یک شنبه 06 آذر 1384, 15:54 عصر
شما فقط مقدار مورد نظر رو تغییر دادین ولی تغییرتونو در فایل ننوشتین ؟؟؟
برای این کار می تونین از Rewrite استفاده کنین توضیح و مثالش در help دلفی هست
موفق باشین

Future
یک شنبه 06 آذر 1384, 16:17 عصر
سلام
دوست عزیز rewrite فایل را از ابتدا می سازه و قبلی ها را پاک می کنه
و به نظر من ربطی به rewite نداره

hr110
یک شنبه 06 آذر 1384, 17:12 عصر
اگر بخواهید خیلی سریع به مقصود خود برسید و اینکه اندازه فایل کوچک است ، باید خط به خط خوانده و در یک فایل جدید بریزید و در صورت نیاز خطوط را تغییر داده و ادامه دهید. در پایان نام فایل جدید را به نام فایل اصلی تغییر دهید.

JavanSoft
یک شنبه 06 آذر 1384, 20:22 عصر
یک متغیر از نوع TStringList ایجاد فایل را در Load و با یک حلقه For جستجو و سپس Save کنید

MiRHaDi
دوشنبه 07 آذر 1384, 15:41 عصر
سلام
بعد از اینکه name1 را خوندید میتونید اون رو توی فایل بنویسید !
ولی مساله این است که بعد از خط خوانده شده نوشته میشود
این در حالیست که فایل را به صورت read/write باز کرده باشید
و ... ( خلاصه کنم کاری که شما میخواید بکنید یکم اذیتتون میکنه)
راه راحتتر اینه که خط به خط بخوانید و تغییر کرده را در فایل دیگه بریزید
بعد فایل اول را پاک کنید و فایل دوم را rename کنید به جای فایل اول
بای