function NoCrLf(const InputStr: string): string;
const
sCRLF = '#13#10';
begin
/// Replace CRLF with space character
Result := StringReplace(InputStr,sCRLF,' ', [rfReplaceAll]);
/// Remove duplicated spaces.
Result := StringReplace(Result,' ',' ',[rfReplaceAll]);
/// Correct inverted parantheses
Result := StringReplace(Result,')(','()',[rfReplaceAll]);
end;
procedure SaveWithNoCrLf(const InputFileName, OutputFileName: string);
var
InputStream, OutputStream : TStringStream;
OutStr : string;
begin
if not FileExists(InputFileName) then
raise Exception.Create('File not found');
OutputStream := nil;
InputStream := TStringStream.Create;
try
InputStream.LoadFromFile(InputFileName);
OutStr := NoCrLf(InputStream.DataString);
OutputStream := TStringStream.Create(OutStr);
OutputStream.SaveToFile(OutputFileName);
finally
InputStream.Free;
OutputStream.Free;
end;
end;