TXT file

0

Jak zrobić aby wczytać znaki z pliku aż do napotkania określonego znaku tzn. żeby wczytywał plik do/od znaku |

0

Tego typu małe problemy powinno się właśnie rozwiązywać samemu. Inaczej daj sobie spokój z programowaniem.

No ale jest wiele możliwości. Np. wczytywanie pliku kawałkami i testowanie każdego kawałka metodą Pos. Następnie kopiowanie całego kawałka, lub jego części, jeśli Pos znalazł '|'.

0

wczytujesz znak po znaku za pomoca read. albo wczytujesz do np. memo i przelatujesz calego stringa i dzielisz go na te 3 czesci (wszystko w pomocy)

(domyslam sie ze do odtwarzacza z napisami, potrzebne ci beda 3 linie (dzisiejszy standard), jesli sie nie myle, to na 4p jest kilka zrodel)

0

nie do memo tylko do tstringlist

0

(domyslam sie ze do odtwarzacza z napisami, potrzebne ci beda 3 linie (dzisiejszy standard), jesli sie nie myle, to na 4p jest kilka zrodel)

No to się mylisz zrobiłem prog który pisze Ci ile chodzi komp zapisuje do pliku i takie tak i teraz chce wczytać to żeby był taki "biling" :) np. z ostatniego miesiąca. Dzięki za odpowiedzi będe musiał popróbować

0

nie do memo tylko do tstringlist

podalem tylko jako przyklad...
jednakze prawda znana jest ze ze zmienna bedzie chodzic szybciej niz z obiektem.

belcio, sorki, no to sie rzeczywiscie pomylilem, ale schemat jest taki sam, wiec zobaczyc tez nie zaszczkodzi.

0

:-) Witam, zpodam Tobie kod Matroxa, nieco zmieniony: :-)

var
   List: TStringList;
begin
   List := TStringList.Create;
   try
      ExtractStrings(['|'], [], '1aaaaaaaaaaaa|2a|3a|4a|5a|6a|7a', List); {zamiast '|' możesz wpisać dowolny znak dzielacy, a zamiast '1aaaaaaaaaaaa|2a|3a|4a|5a|6a|7a' masz wpisać tekst do podziału}
      Label1.Caption := List[0];{ czyli wartość numer 1 :)}
      // Tutaj w liscie masz dostęp do wszystkich wartości np.:
      // Label1.Caption := List[6]; czyli wartość numer 7 :)
   finally
      List.Free;
   end;

end;

mam nadzieję, ze mnie dobrze zrozumiałeś, jakby co to napisz na gg:3434371 :-)

0

ja bym to zrobil tak :

var plik: TStringList;

procedure loadfiledo(fn:string; ch:Char);
var i:integer;
     sl:tstringlist;
begin
if not fileexists(fn) then exit;
sl:=tstringlist.create;
plik:=tstringlist.create;

sl.loadfromfile(fn);
i:=0;
repeat
plik.add(sl.strings[i]);
inc(i);
until (pos(ch,sl.strings[i])>0)or(i=sl.count-1);
sl.free;
end;

powinno dzialac :-P

PS. wlaczenie: loadfiledo('plik.txt','-'); <- zmienna PLIK bedzie miala kawalek pliku plik.txt ;-)

0

DZięki panowie będe próbował THX

0

plik do tego tematu możecie znaleźć w dziale Twoje programy - link [url=http://4programmers.net/news.php?id=1684]http://4programmers.net/news.php?id=1684</url>
i tam to jest

1 użytkowników online, w tym zalogowanych: 0, gości: 1