Conduit

Un article de WikiLinotte.

(Différences entre les versions)
(Nouvelle page : Image:Conduit.png‎ Ce greffon est cours de développement. Code source du greffon : https://code.google.com/p/langagelinotte/source/browse/trunk/Linotte/org/linotte/greffons/...)
Version actuelle (9 février 2015 à 16:20) (modifier) (défaire)
m (simple)
 
(22 révisions intermédiaires masquées)
Ligne 1 : Ligne 1 :
[[Image:Conduit.png‎]]
[[Image:Conduit.png‎]]
-
Ce greffon est cours de développement.
+
Ce greffon est intégré à l'Atelier Linotte.
Code source du greffon : https://code.google.com/p/langagelinotte/source/browse/trunk/Linotte/org/linotte/greffons/impl/Conduit.java
Code source du greffon : https://code.google.com/p/langagelinotte/source/browse/trunk/Linotte/org/linotte/greffons/impl/Conduit.java
 +
 +
*encodage
 +
L'encodage par défaut du conduit est UTF-8. Il est conseillé d'utiliser cet encodage compatible avec l'Atelier Linotte.
 +
Plus d'information sur l'encodage : http://fr.wikipedia.org/wiki/Codage_de_caract%C3%A8res
 +
 +
  Exemple :
 +
  container est un conduit
 +
  début
 +
  container.encodage("UTF-16")
 +
  container.sélectionneretouvrir()
 +
  affiche container.lire()
 +
 +
*ouvrir
 +
Ouvrir le fichier en lecture
 +
 +
  Exemple :
 +
  container est un conduit
 +
  début
 +
  container.ouvrir("/mon/fichier.txt")
 +
  affiche container.lire()
 +
 +
*sélectionneretouvrir
 +
Cette fonction ouvre le sélecteur de fichier du système d'exploitation et permet de sélectionner un fichier destiné à être ouvrir.
 +
 +
  Exemple :
 +
  container est un conduit
 +
  début
 +
  container.sélectionneretouvrir()
 +
  affiche container.lire()
 +
 +
*lire
 +
Retourner tous les caractères du fichier ouvert.
 +
 +
Exemple :
 +
  container est un conduit
 +
  début
 +
  container.sélectionneretouvrir()
 +
  affiche container.lire()
 +
 +
*nlire
 +
Retourner les n caractères suivant du fichier
 +
 +
Exemple :
 +
container est un conduit
 +
début
 +
  container.sélectionneretouvrir()
 +
  essaie lis
 +
  tant que vrai affiche "10 caractères : " + container.nlire(10)
 +
  ferme
 +
 +
*enregistrer
 +
ouvrir le fichier destiné à l'enregistrement
 +
 +
  Exemple :
 +
  container est un conduit
 +
  début
 +
    container.enregistrer("c:/tmp/linotte.txt")
 +
    container.écrire("Voici un texte écrit depuis le langage Linotte !")
 +
    container.fermer()
 +
 +
*sélectionneretenregistrer
 +
afficher le <i>sélectionneur</i> de fichiers et ouvre le fichier sélectionné en écriture
 +
 +
Exemple :
 +
container est un conduit
 +
début
 +
  affiche "Sélectionnez un nouveau fichier que je vais créer"
 +
  container.sélectionneretenregistrer()
 +
  container.écrire("Voici un texte écrit depuis le langage Linotte !")
 +
  container.fermer()
 +
 +
*ecrire
 +
écrire la valeur de l'acteur dans le fichier
 +
 +
Exemple :
 +
  container est un conduit
 +
  a est un texte valant "Bonjour,"
 +
  b est un texte valant "Le monde !"
 +
  n est un nombre valant 777
 +
  début
 +
    affiche "Sélectionnez un nouveau fichier que je vais créer"
 +
    container.sélectionneretenregistrer()
 +
    container.écrire(a)
 +
    container.écrire(b)
 +
    container.écrire(n)
 +
    container.fermer()
 +
 +
*Exemple complet 1 :
 +
 +
globale
 +
  form est un formulaire, titre vaut "La boite à texte", largeur vaut 400, hauteur vaut 260
 +
  boite est un boite,x vaut 30, y vaut 30, largeur vaut 200, hauteur vaut 100
 +
  b1 est un menubouton, texte vaut "Afficher le texte dans le tableau"
 +
  l1 est un étiquette, texte vaut "", x vaut 30, y vaut 200
 +
  b2 est un menubouton, texte vaut "Ouvrir un fichier"
 +
  container est un conduit
 +
  principal :
 +
  Ajoute boite & b1 & b2 & l1 dans form
 +
  Fais réagir b1 à "clic souris" pour valeur
 +
  Fais réagir b2 à "clic souris" pour ouvrir
 +
  tant que 1 != 2 lis
 +
    temporise
 +
  ferme
 +
  valeur :
 +
  *b est un menubouton
 +
  début
 +
    texte@boite !
 +
    Reviens
 +
  Ouvrir :
 +
  *b est un menubouton
 +
  retour est un drapeau
 +
  début
 +
    retour vaut c.sélectionneretouvrir()
 +
    si retour lis
 +
      texte@boite vaut c.lire()
 +
    ferme
 +
    Reviens
 +
 +
 +
* Exemple complet 2 :
 +
 +
Exemple Conduit :
 +
  container est un conduit
 +
  chemin_sauvegarde est un texte
 +
  ligne valant chr(13) + chr(10)
 +
  début
 +
  container.sélectionneretenregistrer()
 +
  affiche  "répertoire + nom du fichier : " + container.nomfichiercomplet()
 +
  affiche  "répertoire : " + container.chemin()
 +
  container.fermer()
 +
  chemin_sauvegarde vaut container.nomfichiercomplet()
 +
  si container.fichierexiste(chemin_sauvegarde) lis
 +
    "on sauvegarde !" !
 +
    container.enregistrer(chemin_sauvegarde)
 +
    container.écrire("ça marche")
 +
    container.écrire(ligne)
 +
    container.écrire("l'autre ligne")
 +
    container.écrire(ligne)
 +
    container.écrire("encore une ligne !!!")
 +
    container.fermer()
 +
    //on va vérifier les informations sauvegardées :
 +
    container.ouvrir(chemin_sauvegarde)
 +
    affiche "1 : " + container.lireligne()
 +
    affiche "2 : " + container.lireligne()
 +
    affiche "3 : " + container.lireligne()
 +
    container.fermer()
 +
  ferme

Version actuelle

Image:Conduit.png‎

Ce greffon est intégré à l'Atelier Linotte.

Code source du greffon : https://code.google.com/p/langagelinotte/source/browse/trunk/Linotte/org/linotte/greffons/impl/Conduit.java

  • encodage

L'encodage par défaut du conduit est UTF-8. Il est conseillé d'utiliser cet encodage compatible avec l'Atelier Linotte. Plus d'information sur l'encodage : http://fr.wikipedia.org/wiki/Codage_de_caract%C3%A8res

 Exemple :
 container est un conduit
 début
  container.encodage("UTF-16")
  container.sélectionneretouvrir()
  affiche container.lire()
  • ouvrir

Ouvrir le fichier en lecture

 Exemple :
 container est un conduit
 début
  container.ouvrir("/mon/fichier.txt")
  affiche container.lire()
  • sélectionneretouvrir

Cette fonction ouvre le sélecteur de fichier du système d'exploitation et permet de sélectionner un fichier destiné à être ouvrir.

 Exemple :
 container est un conduit
 début
  container.sélectionneretouvrir()
  affiche container.lire()
  • lire

Retourner tous les caractères du fichier ouvert.

Exemple :
 container est un conduit
 début
  container.sélectionneretouvrir()
  affiche container.lire()
  • nlire

Retourner les n caractères suivant du fichier

Exemple : 
container est un conduit
début
 container.sélectionneretouvrir()
 essaie lis
  tant que vrai affiche "10 caractères : " + container.nlire(10)
 ferme
  • enregistrer

ouvrir le fichier destiné à l'enregistrement

 Exemple :
 container est un conduit
 début
   container.enregistrer("c:/tmp/linotte.txt")
   container.écrire("Voici un texte écrit depuis le langage Linotte !")
   container.fermer()
  • sélectionneretenregistrer

afficher le sélectionneur de fichiers et ouvre le fichier sélectionné en écriture

Exemple :
container est un conduit
début
 affiche "Sélectionnez un nouveau fichier que je vais créer"
 container.sélectionneretenregistrer()
 container.écrire("Voici un texte écrit depuis le langage Linotte !")
 container.fermer()
  • ecrire

écrire la valeur de l'acteur dans le fichier

Exemple :
 container est un conduit
 a est un texte valant "Bonjour,"
 b est un texte valant "Le monde !"
 n est un nombre valant 777
 début
   affiche "Sélectionnez un nouveau fichier que je vais créer"
   container.sélectionneretenregistrer()
   container.écrire(a)
   container.écrire(b)
   container.écrire(n)
   container.fermer()
  • Exemple complet 1 :
globale
 form est un formulaire, titre vaut "La boite à texte", largeur vaut 400, hauteur vaut 260
 boite est un boite,x vaut 30, y vaut 30, largeur vaut 200, hauteur vaut 100
 b1 est un menubouton, texte vaut "Afficher le texte dans le tableau"
 l1 est un étiquette, texte vaut "", x vaut 30, y vaut 200
 b2 est un menubouton, texte vaut "Ouvrir un fichier"
 container est un conduit
 principal :
  Ajoute boite & b1 & b2 & l1 dans form
  Fais réagir b1 à "clic souris" pour valeur
  Fais réagir b2 à "clic souris" pour ouvrir
  tant que 1 != 2 lis
    temporise
  ferme
 valeur :
  *b est un menubouton
  début
   texte@boite !
   Reviens
 Ouvrir :
  *b est un menubouton
  retour est un drapeau
  début
   retour vaut c.sélectionneretouvrir()
   si retour lis
     texte@boite vaut c.lire()
   ferme
   Reviens


  • Exemple complet 2 :
Exemple Conduit :
 container est un conduit
 chemin_sauvegarde est un texte
 ligne valant chr(13) + chr(10)
 début
  container.sélectionneretenregistrer()
  affiche  "répertoire + nom du fichier : " + container.nomfichiercomplet()
  affiche  "répertoire : " + container.chemin()
  container.fermer()
  chemin_sauvegarde vaut container.nomfichiercomplet()
  si container.fichierexiste(chemin_sauvegarde) lis
   "on sauvegarde !" !
   container.enregistrer(chemin_sauvegarde)
   container.écrire("ça marche")
   container.écrire(ligne)
   container.écrire("l'autre ligne")
   container.écrire(ligne)
   container.écrire("encore une ligne !!!")
   container.fermer()
   //on va vérifier les informations sauvegardées :
   container.ouvrir(chemin_sauvegarde)
   affiche "1 : " + container.lireligne()
   affiche "2 : " + container.lireligne()
   affiche "3 : " + container.lireligne()
   container.fermer()			
  ferme
Outils personnels