overwrite نکردن تکست در idftp
سلام.
من می خواستم وقتی با استفاده از idftp و متد put یک فایل تکست ایجاد میکنیم و یک متنی را در داخل آن مینویسیم, در سری بعد اگر دوباره اینکار را انجام دادیم, متن جدید در جلوی متن قبلی قرار بگیرد و در واقع یعنی تکست قبلی بماند و حذف نشود.
اما در حالت عادی idftp تکست را overwrite میکنه.
نقل قول: overwrite نکردن تکست در idftp
سلام
لطفاً کدی که نوشته اید را برای تست قرار دهید و یا یک پروژه کوچک نمونه را قرار دهید.
در ضمن بهتر بود این موضوع رو در قسمت "توسعه نرم افزارهای تحت شبکه" مطرح می کردید.
نقل قول: overwrite نکردن تکست در idftp
var
Str: TStringStream;
FTP: TIdFTP;
begin
Str := TStringStream.Create;
FTP := TIdFTP.Create(nil);
try
with FTP do
begin
Host := '176.1.333.555';
Username := 'Username';
Password := 'Password';
Connect;
if Connected then
begin
ChangeDir('/tmp');
Get('Test.txt', Str, True);
Str.WriteString('Sample Text');
Put(Str, 'Test.txt');
end
else
MessageDlg(Format('Could not connect to %s', [Host]), mtError,
[mbOK], 0);
end;
finally
Str.Free;
FTP.Disconnect;
FTP.Free;
end;
end;
قبل از پست دادن یک دور متدهای idFTP رو بررسی کنید ، یکم از خودتون خلاقیت نشون بدید ، اضافه کردن یک خط کد کار پیچیده ای نیست ، دنبال لقمه آماده نباشید .
نقل قول: overwrite نکردن تکست در idftp
خیلی ممنونم.
فقط یه مشکلی.
ارور زیر رو داد :
ascii resume unsafe, please delete the file first
چه جوری باید اون فایل رو تنظیم کنم که متن های ascii را قبول کنه ( با توجه به ارور )؟
باید چی کار کنیم؟
نقل قول: overwrite نکردن تکست در idftp
var
Str: TStringStream;
FTP: TIdFTP;
begin
Str := TStringStream.Create;
FTP := TIdFTP.Create(nil);
try
with FTP do
begin
Host := '176.1.333.555';
Username := 'Username';
Password := 'Password';
Connect;
if Connected then
begin
ChangeDir('/tmp');
Get('Test.txt', Str);
Str.WriteString('Sample Text');
Put(Str, 'Test.txt');
end
else
MessageDlg(Format('Could not connect to %s', [Host]), mtError,
[mbOK], 0);
end;
finally
Str.Free;
FTP.Disconnect;
FTP.Free;
end;
end;