Witamy na Programowanie - Forum programistyczne
Pokaż wyniki od 1 do 4 z 4
  1. #1
    Junior Member
    Dołączył
    Nov 2008
    Posty
    2

    String na tablicę znaków - Memo

    Witam
    Niedawno postanowiłem nauczyć się pascala, a teraz trafiłem na ścianę.

    Chcę wczytać tekst z Memo do tablicy znaków i za żadne skarby nie mogę tego rozgryźć. W C++ nie stanowi to dla mnie większego problemu, ale w pascalu nie mogę skorzystać z doświadczeń z C++ (w tej sferze i tak mnie się tylko wydaje^^).

    Korzystam z Delphi 3, więc nie mogę deklarować tablic dynamicznych, ale o ile to możliwe chciałbym by ten problem został rozwiązany właśnie w tej wersji Delphi.
    Nie wiem jeszcze zbyt wiele o obiektach w Delphi, więc jeśli łatwiej będzie skorzystać z innego obiektu niż Memo, to z chęcią wysłucham pomysłów.

  2. #2
    Junior Member
    Dołączył
    Nov 2008
    Posty
    19
    Kod:
    procedure TForm1.FormCreate(Sender: TObject);
    var
      param : String;
      result: array of char;
    begin
      // pobranie tekstu dla zmiennej
      param := memo.Text;
      // wyświetlenie całego string'u
      ShowMessage(param);
      // odwołanie identyczne jak w przypadku tablicy
      ShowMessage(param[2]);
    end;
    Pozdrawiam.

  3. #3
    Junior Member
    Dołączył
    Nov 2008
    Posty
    2
    Dzięki wielkie ^^
    Za bardzo chciałem to zrobić tak jak w C++ i przez to głupoty mi wychodziły.

    EDIT:
    Mam jeszcze jedno pytanie. Próbuję wczytać text z memo do tablicy tak by był podzielony na słowa. Standardowo wykorzystałbym powyższą funkcję i jeśli pętla natrafiła by na NULL wpisałbym słowo do drugiej tablicy, ale cosik mi nie wychodzi :/

    Dlatego moja kolejna prośba dotyczy wczytywania do tablicy słów z memo, tak by później można było odwołać się do każdego z nich. To nie musi być koniecznie gotowy kod, ale nawet zwykłe instrukcje, dzięki którym sam to napiszę (chodź kod będzie oczywiście mile widziany )

  4. #4
    Junior Member
    Dołączył
    Nov 2008
    Posty
    19
    Proponuje najpierw zliczyć ilość słów zawartych w zmiennej param. Możesz to wykonać poprzez pętle while zliczającą ilość wystąpień znaku spacja i znaków nowej lini. Trzeba wziąść pod uwagę fakt, że dwa znaki spacji mogą wystąpić obok siebie. Następnie ustalasz dokładną wielkość tablicy typu String przy pomocy funkcji SetLength(). Potem wykonujesz przypisanie wartości posługując się pętlą for i funkcją Copy(). Ten sposób jest dość "brudny". Zbyt mały kontakt z Delphi mam bym mógł wykombinować coś lepszego.
    Pozdrawiam.

 

 

Podobne wątki

  1. Odpowiedzi: 4
    Ostatni post / autor: 20-09-09, 21:49
  2. formatowanie tekstu ( memo)
    By qwee in forum Delphi
    Odpowiedzi: 1
    Ostatni post / autor: 01-10-08, 19:47
  3. Problem z progsem przepisującym tablicę.
    By korona_fan in forum Pascal
    Odpowiedzi: 4
    Ostatni post / autor: 02-11-07, 19:02
  4. listbox/memo..?
    By Silly in forum Delphi
    Odpowiedzi: 2
    Ostatni post / autor: 19-07-07, 13:56
  5. [java] if(string == string)
    By Naiya in forum Java
    Odpowiedzi: 2
    Ostatni post / autor: 05-06-07, 15:40

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Back to top