簡體   English   中英

如何在 Delphi 中修剪/替換 FileStream 中的第一個字符?

[英]How can I trim / replace the first character in a FileStream in Delphi?

我有以下代碼用於使用 IDHttp.Get 進行一系列文件縮減,文件的內容

procedure Tform1.GetData;
{***************************}

var
        fs2 : tfilestream;
        s : char;
begin
        Sleep(1000);
        idhttp1.HandleRedirects := TRUE;
        fsjson2 := tfilestream.Create((GstrPath+GstrRep+'-'+GstrHome+'.json'),fmcreate);;
        idhttp1.IOHandler := idssl;
        IdSSL.SSLOptions.SSLVersions := [sslvTLSv1, sslvTLSv1_1, sslvTLSv1_2];
        IdSSL.SSLOptions.Mode := sslmUnassigned;
        try
                idhttp1.Get(GstrURL,fs2);
        except
                on E: Exception do
                begin
                        rememo1.Lines.Add('Seems to be an issue, trying again...');
                        Sleep(500);
                        idhttp1.Get(GstrURL,fs2);
                end;

        end;

我希望有一種方法可以修剪第一個字符,盡管我認為這是不可能的,或者用空白字符替換第一個字符(默認情況下隨信息一起提供)。 我認為目前這有點超出我的技能范圍,因此希望有人能提供任何幫助。

謝謝

螞蟻

有幾種可能的解決方案:

您正在將數據接收到流中。 如果您想修剪第一個字符,您可以在處理流的地方跳過讀取第一個字符並將其丟棄。

如果您無法控制接收流的處理位置,那么您可以簡單地創建一個新流並循環讀取接收流中的所有字符並將它們寫入目標流。 然后扔掉收到的流並保留您創建的流。

如果接收到的數據(當前是流)不是太大,您可以將其接收到字符串而不是流中,然后您可以通過簡單的字符串操作來修剪/刪除/插入任何內容,最后將修改后的字符串寫回流供以后使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM