Les chaînes de caractères▲
La gestion des chaînes de caractères avec MIDlet Pascal est légèrement différente de celle du Pascal standard. Ici une chaîne de caractère commencera à l'indice 0 au lieu de 1.
- copy est une fonction qui renvoie une sous-chaîne commençant à debut et finissant à fin - 1.
function copy(chaine: string; debut, fin: integer): string;Cette fonction copy (de MIDlet Pascal) est différente de la fonction standarde du langage Pascal.
- length permet d'obtenir la longueur d'une chaîne de caractères.
function length(chaine: string): integer;- pos : renvoie la position de la première occurrence de chaine2 dans chaine1. Si aucune occurrence n'est trouvée alors la fonction renvoie 0.
function pos(chaine1, chaine2: string): integer;- upCase renvoie une copie en lettres capitales de la chaîne passée en paramètre. Elle crée donc une copie de la chaîne passée en paramètre en majuscule.
function upCase(chaine: string): string;- loCase renvoie une copie de la chaîne passée en paramètre mettant toutes les lettres en minuscules.
function loCase(chaine: string): string;- getChar retourne le caractère situé à une position donnée dans la chaîne.
function getChar(chaine: string; position:integer): char;- setChar renvoie une copie de la chaîne passée comme 1er paramètre en remplaçant le caractère initial à la position choisie par le caractère passé comme second paramètre. La fonction retournera la même chaîne passée en paramètre si la position dépasse sa longueur.
function setChar(chaine: string; car: char; position:integer): string;- stringToInteger effectue la conversion de la chaîne passée en paramètre en entier en base décimale, elle renvoie 0 si la conversion s'est mal passée.
function stringToInteger(chaine:string):integer;- stringToReal convertit la chaîne en réel, dans la base passée en paramètre.
function stringToReal(str:string; base:integer):real;- integerToString convertit un entier en chaîne de caractères.
function integerToString(val: integer): string;Les cas les plus fréquents d'utilisation de integerToString, sont les cas où vous aurez besoin par exemple d'afficher un entier avec drawText.
var i: integer;
begin
{1 er cas d'affichage d'un entier avec drawText}
i := 3;
drawText(integerToString(i),0,0);
{2ème cas d'affichage d'un entier avec drawText}
drawText(''+i,0,0);
{vous verrez l'utilisation de drawText dans la suite du tutoriel}
repaint;
delay (2000);
end;L'exemple ci-dessous illustre l'utilisation des différentes fonctions.
var chaine, result : String;
len,position, nombre :integer;
r :real;
begin
chaine :='MIDlet Pascal';
result := copy(chaine, 5, 10);
drawText(result, 0,0);{affichera 't Pas'}
len := length(result); {contient 5}
result := upCase (result); {mettre en majuscule toutes les lettres}
result := loCase (result); {mettre en miniscule toutes les lettres}
position := pos (result, 'asc'); {retournera -1}
drawText(''+ getChar(result, 2),0,0); {affichera P}
result := setChar (result, 'J', 3); {result ='t PJs'}
nombre := stringToInteger('1234'); {nombre =1234}
r := stringToReal('123.1',10); {r='123.1000'}
repaint;
delay(2000);
end.

