AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Textdatei in Liste lesen und per idHTTP senden
Thema durchsuchen
Ansicht
Themen-Optionen

Textdatei in Liste lesen und per idHTTP senden

Ein Thema von gene · begonnen am 4. Mär 2008 · letzter Beitrag vom 6. Mär 2008
Antwort Antwort
gene

Registriert seit: 11. Feb 2008
55 Beiträge
 
Delphi 7 Personal
 
#1

Textdatei in Liste lesen und per idHTTP senden

  Alt 4. Mär 2008, 00:15
Hi, ich bins mal wieder, der Anfänger.

Ich möchte eine Textdatei in eine TListView oder Box oder sonst was einlesen ( 2 Spalten)..

Txt:

monitor1:marke1
monitor2:marke2
monitor3:marke3
etc..

also in der Liste soll dann die erste Spalte "monitor" und die zweite Spalte "marke" sein..

also er soll was vor dem : steht -> spalte1 und nach : spalte2 geben.

und dann mit einer Schleife per idHTTP diese 2 werte, also monitor1 und marke1 senden ( warum jetzt genau is glaub ich nicht wichtig ).

Meine Fragen:

Wie stell ich es am besten an dass er vor : und nach : importiert?

Und wie könnte ich dann die Liste am besten mit einer Schleife durchgehen?

Bin dankbar für jede Hilfe.

greetz gene
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 4. Mär 2008, 07:28
Moin Gene,

kennst du die Komponente ValueListEditor?

Delphi-Quellcode:
procedure CopyNamedValues(sFrom, sTo: TStrings);
var
  i: Integer;
begin
  sTo.BeginUpdate;
  try
    sTo.Clear;
    for i := 0 to Pred(sFrom.Count) do
      sTo.Values[sFrom.Names[i]] := sFrom.ValueFromIndex[i];
  finally
    sTo.EndUpdate;
  end;
end;

procedure TDemoForm.FormCreate(Sender: TObject);
var
  s: TStrings;
begin
  s := TStringList.Create;
  s.NameValueSeparator := ':';
  s.LoadFromFile('test.txt');
  CopyNamedValues(s, ValueListEditor.Strings);
  s.Free;
end;
Kannst du deine Delphi-Version in deinem DP-Profil nachtragen?

Grüße vom marabu
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#3

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 4. Mär 2008, 07:48
Moin, Moin.

Die Zeile
procedure CopyNamedValues(sFrom, sTo: TStrings); irritiert mich jetzt etwas, marabu. Ich lebe in dem Glauben, dass bei dieser Parametereingabe innerhalb der Procedur mit einer lokalen Kopie von sTo gearbeitet wird; dass also, um sTo ausserhalb nutzen zu können, TStrings als var-Parameter mit

procedure CopyNamedValues(sFrom:TStrings;var sTo: TStrings); übergeben werden müsste?! Habe ich da ein falsches Weltbild, oder ist das ein Tippfehler?
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 4. Mär 2008, 07:53
Objektreferenzen muss man nicht explizit als Var-Parameter übergeben, da es sich intern bereits um Zeiger handelt.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#5

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 4. Mär 2008, 07:57
Oh, vielen Dank, dann habe ich ja in vielen Fällen unnötig viel getippt
Ralph
  Mit Zitat antworten Zitat
gene

Registriert seit: 11. Feb 2008
55 Beiträge
 
Delphi 7 Personal
 
#6

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 5. Mär 2008, 00:09
Vielen Danke marabu, du hast mich sehr viel weitergebracht.

Ich gebe ja wie oben beschrieben per IdHTTP die Daten weiter...

also idHTTP1.GET('http://genecrew.org?monitor=' +monitor1+ '&marke=' +marke1);

Das war jetzt ein Beispiel.

Wie könnte ich die Schleife laufen lassen dass sie immer Schlüssel1 & Wert1 aus der ValueListEdit synchron weitergibt, also Mon1+Mark1 etc. und nicht
Mon1+Mark3 zum Beispiel?

ps: hab jetzt meine Delphiversion im Profil eingetragen.

edit:// Ich hab jetzt etawas rumprobiert, mein Problem ist dass ich nicht weis wie ich das Maximum der Rows ermittle.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 5. Mär 2008, 08:13
Moin,

vielleicht bringen dich diese Code-Zeilen noch etwas weiter:

Delphi-Quellcode:
procedure TDemoForm.ButtonClick(Sender: TObject);
const
  FMT_URL = 'http://genecrew.org?monitor=%s&marke=%s';
var
  i: Integer;
  sHtml, sKey, sValue, url: string;
begin
  with ValueListEditor do
  for i := 1 to Pred(RowCount) do
  begin
    sKey := {IdURI.}TIdURI.ParamsEncode(Keys[i]);
    sValue := TIdURI.ParamsEncode(Values[sKey]);
    url := Format(FMT_URL, [sKey, sValue]);
    // sHtml := HTTP.Get(url);
  end;
end;
Freundliche Grüße
  Mit Zitat antworten Zitat
gene

Registriert seit: 11. Feb 2008
55 Beiträge
 
Delphi 7 Personal
 
#8

Re: Textdatei in Liste lesen und per idHTTP senden

  Alt 6. Mär 2008, 18:24
Danke marabu, nach 4 stunde hin und her hab ichs geschafft

Bist ein Held!

greetz geNe
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz