Einzelnen Beitrag anzeigen

bennle

Registriert seit: 22. Jul 2005
Ort: Kehl
139 Beiträge
 
Delphi 2007 Professional
 
#25

Re: eBay Turbolister CSV einlesen

  Alt 26. Feb 2007, 22:44
Hi,
Also danke, ich denke mir reicht das nun für's erste!!
Hab zwar hier und da noch ein paar Probleme, aber ich denke die werde ich Meistern.
Wenn nicht, dann werde ich mich hier wieder im Board melden! Denn hier bekommt man einfach einen super Support.

Hier meine Lösung für den HTML CODE im CSV
Delphi-Quellcode:
function CSVExplode(const Separator, S: string; Limit: Integer = 0): TStringDynArray;
var
  SepLen: Integer;
  F, P: PChar;
  ALen, Index: Integer;
begin
  SetLength(Result, 0);
  if (S = '') or (Limit < 0) then Exit;
  if Separator = 'then
  begin
    SetLength(Result, 1);
    Result[0] := S;
    Exit;
  end;
  SepLen := Length(Separator);
  ALen := Limit;
  SetLength(Result, ALen);

  Index := 0;
  P := PChar(S);
  while P^ <> #0 do
  begin
    F := P;
//Position des HTML Codes herausfinden!
    if pos('"',P) = 1 then
    begin
      P := AnsiStrPos(P, PChar('";'));
    end
    else
      P := AnsiStrPos(P, PChar(Separator));
//ENDE Position des HTML Codes herausfinden!

    if (P = nil) or ((Limit > 0) and (Index = Limit - 1)) then P := StrEnd(F);
    if Index >= ALen then
    begin
      Inc(ALen, 5);
      SetLength(Result, ALen);
    end;
    SetString(Result[Index], F, P - F);
    Inc(Index);
    if P^ <> #0 then Inc(P, SepLen);
  end;
  if Index < ALen then SetLength(Result, Index);
end;
Evtl sollte man noch die Anführungszeichen bei der HTML Zelle entfernen, allerdings weis ich den Befehl momentan nicht
Ist wohl schon zu spät.
Ebenfalls gibt es ein Problem, sobald ein Zeilenumbruch im HTML Text zu sein scheint!
Wenn jemand weiß, wie ich das regeln kann, dann bitte ich um Hilfe! Denn es kommt eine Zugriffsverletzung
Also Danke nochmal


Gruß
Benny
  Mit Zitat antworten Zitat