从FreePascal文件读取
因此,我有一个包含以下内容的文本文件:从FreePascal文件读取,pascal,freepascal,Pascal,Freepascal,因此,我有一个包含以下内容的文本文件: Harry Potter and the Deathly Hallows###J. K. Rowling###2007 我必须以下面的形式将它输出到FreePascal程序 J.K.Rowling "Harry Potter and the Deathly Hallows" 2007 year 我知道如何读取文件,但我不知道如何使其像previos表单一样 有人能帮我吗?我将非常感谢。如果freepascal中的TStringList与Delphi中的
Harry Potter and the Deathly Hallows###J. K. Rowling###2007
我必须以下面的形式将它输出到FreePascal程序
J.K.Rowling "Harry Potter and the Deathly Hallows" 2007 year
我知道如何读取文件,但我不知道如何使其像previos表单一样
有人能帮我吗?我将非常感谢。如果freepascal中的TStringList与Delphi中的TStringList相同,那么这将实现以下功能:
function SortedString( const aString : String) : String;
var
sList : TStringList;
begin
Result := '';
sList := TStringList.Create;
try
sList.LineBreak := '###';
sList.Text := aString;
if (sList.Count = 3) then
begin
Result := sList[1] + ' "' + sList[0] + '" ' + sList[2] + ' year';
end;
finally
sList.Free;
end;
end;
更新,正如@TLama所评论的,freepascal
TStringList
没有LineBreak
属性
请改为尝试此操作(在StrUtils中使用ReplaceStr
):
如果freepascal中的
TStringList
与Delphi中的相同,那么这将实现以下技巧:
function SortedString( const aString : String) : String;
var
sList : TStringList;
begin
Result := '';
sList := TStringList.Create;
try
sList.LineBreak := '###';
sList.Text := aString;
if (sList.Count = 3) then
begin
Result := sList[1] + ' "' + sList[0] + '" ' + sList[2] + ' year';
end;
finally
sList.Free;
end;
end;
更新,正如@TLama所评论的,freepascal
TStringList
没有LineBreak
属性
请改为尝试此操作(在StrUtils中使用ReplaceStr
):
到目前为止你试过什么?我想这是你的家庭作业。将字符串拆分为标记,并将####中包含的标记放在前面。关于拆分字符串,看看你到目前为止都做了些什么?我想这是你的家庭作业。将字符串拆分为标记,并将####中包含的标记放在前面。关于分开绳子,我恐怕不是;我已经在FPC 2.6.0(Lazarus 1.0 RC2)中对此进行了检查,没有可用的
LineBreak
属性。恐怕没有;我在FPC 2.6.0(Lazarus 1.0 RC2)中对此进行了检查,没有可用的LineBreak
属性。