Einzelnen Beitrag anzeigen

Benutzerbild von peschai
peschai

Registriert seit: 15. Feb 2004
Ort: Göppingen
270 Beiträge
 
Delphi XE5 Professional
 
#11

Re: CSV-Datei in Stringgrid bringen

  Alt 6. Nov 2009, 07:05
Hier die Implementierung auf Basis von TStringList


Delphi-Quellcode:
         // Neutralisierung Zeilenumbrüche innerhalb CSVZelle
         try
            FStrings.BeginUpdate;
            FStrings.Capacity := j1.Count;
            i7 := j1.Count-1;
            i6 := -1;
            While (i6<i7) do
              begin
                // Loop
                Inc(i6);
                s4 := j1[i6];
                If Odd(fctLocalCharCount(s4,c3)) then
                  begin
                    // Zeilenumbruch in Zelle erkannt, nächste Zeile(n) dazunehmen
                    if (i6<i7)
                      then
                        begin
                          Inc(i6);
                          s5 := j1[i6];
                          s4 := s4 + #13#10 + s5;
                          // eventuell weitere Zeilen
                          While Not(Odd(fctLocalCharCount(s5,c3))) and (i6<i7) do
                            begin
                              Inc(i6);
                              s5 := j1[i6];
                              s4 := s4 + #13#10 + s5;
                            end;
                        end
                      else
                        begin
                          raise Exception.Create('CSV Parser Fehler in Zeile '+IntToStr(i6));
                        end;
                  end;
                // Datenzeile in Pool speichern
                FStrings.Add(s4);
              end;
          finally
            FStrings.EndUpdate;
          end;
Peter Schaible
  Mit Zitat antworten Zitat