Accueil Technologie

Comment lire et écrire des fichiers dans une application JES ?

JES est un environnement de programmation que vous pouvez utiliser pour écrire, tester et exécuter du code localement sur votre ordinateur. JES offre de nombreuses fonctionnalités telles que la possibilité d’éditer des photos, des vidéos ou d’autres médias.


Vous pouvez également effectuer d’autres tâches dans JES, comme lire ou écrire dans des fichiers. Vous pouvez lire des données à partir de différents types de fichiers, notamment les fichiers texte et les fichiers CSV.


Comment lire depuis un fichier avec JES

Vous pouvez consulter et télécharger le code source complet de ces exemples à partir du dépôt GitHub.

Pour lire un fichier dans JES, il faut d’abord l’ouvrir, puis lire son contenu et l’enregistrer dans une variable pour un traitement ultérieur.

Si vous lisez un fichier texte, vous pouvez stocker chaque ligne du fichier séparément comme un élément d’un tableau. Si vous lisez un fichier CSV, vous pouvez également enregistrer la valeur de chaque cellule séparément.

  1. Ouvrez le logiciel JES sur votre ordinateur. Dans la fenêtre de programmation, créez une nouvelle fonction :
     def readFromFile(): 
  2. Utilisez la fonction pickAFile() pour demander à l’utilisateur de sélectionner un fichier. Vous pouvez facilement trouver de l’aide pour les fonctions JES intégrées afin d’en savoir plus sur celles-ci.
     file = pickAFile()  
  3. Validez le fichier pour vous assurer que l’utilisateur a uniquement sélectionné un fichier TXT ou CSV :
     if not file.endswith(".txt") and not file.endswith(".csv"):
      print("Error: Only .txt and .csv files are supported.")
      return
  4. Ouvrez le fichier sélectionné à l’aide de la fonction open(). Le premier paramètre est le fichier à partir duquel vous lisez. Le second paramètre spécifie le mode utilisé pour ouvrir le fichier. Par exemple, « rt » signifie « lire le fichier ».
     openedFile = open(file, "rt")  
  5. Pendant que le fichier est ouvert, lisez tout le contenu du fichier. Stockez le contenu du fichier dans une variable :
     allContent = openedFile.read() 
  6. Fermez le fichier :
     openedFile.close() 
  7. La variable « allContent » contient une chaîne unique qui contient tout le contenu du fichier. Un caractère de nouvelle ligne (\n) sépare chaque ligne du fichier. Si vous voulez accéder à chaque ligne individuellement, divisez la chaîne et stockez chaque ligne comme un élément d’un tableau :
     if file.endswith(".txt"):
      rows = allContent.split("\n")
      print(rows)
  8. Si vous lisez un fichier CSV, vous pouvez séparer davantage chaque ligne pour obtenir la valeur de chaque cellule individuelle. Pour chaque ligne du fichier CSV, séparez les valeurs à l’aide d’une virgule et stockez-les dans un double tableau. La structure du tableau ressemblera à ceci : [[1,2,3], [4,5,6], [7,8,9]].
     if file.endswith(".csv"): 
      rows = allContent.split("\n")
      csvData = []

      for row in rows:
        if (row != ''):
          cells = row.split("https://www.makeuseof.com/jes-read-write-files/,")
          csvData.append([float(cell) for cell in cells])

      print(csvData)
  9. Pour tester le programme, créez un nouveau fichier texte appelé sample.txtet le remplir avec du texte :
     This is the start of the file
    This is another line
    This is the third line
    This is the end of the file
  10. Créez également un fichier CSV, nommez-le nombres.csvet le remplir avec des données :
    Exemple de fichier CSV avec des données
  11. Sur l’interface JES, cliquez sur le bouton Charger le programme bouton, situé entre la fenêtre de programmation et la ligne de commande :
    Bouton de chargement du programme dans JES
  12. Exécutez la fonction readFromFile() dans la ligne de commande :
     readFromFile() 
  13. En utilisant l’invite de fichier, naviguez jusqu’à l’endroit où vous avez stocké votre fichier sample.txt. Sélectionnez le fichier pour l’ouvrir et voir le contenu imprimé sur la console :
    Résultat de la console montrant chaque ligne du fichier texte dans le tableau
  14. Exécutez à nouveau la fonction readFromFile() dans l’invite de commande. Sélectionnez le fichier numbers.csv pour afficher le contenu imprimé sur la console, avec chaque cellule séparée et stockée dans le tableau :
    Résultat de la console montrant les cellules excel dans le tableau double

Comment écrire dans un fichier avec JES

Vous pouvez écrire dans un fichier CSV ou texte en utilisant la fonction write(). Vous pouvez ouvrir le fichier pour l’ajouter ou l’écrire. L’ajout ajoutera au contenu existant, tandis que l’écriture écrasera tout contenu existant dans le fichier.

Créez une nouvelle fonction, et utilisez-la pour écrire dans un fichier texte et un fichier CSV.

  1. Créez une nouvelle fonction appelée writeToFile() :
     def writeToFile(): 
  2. Utilisez la fonction pickAFile() pour demander à l’utilisateur de sélectionner un fichier :
     file = pickAFile()  
  3. Ouvrez le fichier à ajouter :
     openedFile = open(file, "at") 
  4. Alternativement, si vous voulez écraser tout le contenu du fichier, entrez « w » comme deuxième argument à la place :
     openedFile = open(file, "w") 
  5. Écriture dans le fichier. Pour ajouter plusieurs lignes, utilisez le « \n » pour séparer le contenu en lignes, ou utilisez à nouveau la fonction write() :
     if file.endswith(".txt"):
      openedFile.write("\nTesting")
      openedFile.write("\nTesting1\nTesting2")
      openedFile.write("\nTesting3")
  6. Pour écrire dans un fichier CSV, écrivez toutes les données d’une seule ligne à l’aide de la fonction write(), et séparez les valeurs de chaque cellule par une virgule :
     if file.endswith(".csv"): 
      openedFile.write("\n12,34,56")
  7. Fermez le fichier après y avoir écrit :
     openedFile.close()
    print("Wrote to file successfully")
  8. Cliquez sur le bouton Charger le programme bouton, situé entre la fenêtre de programmation et la ligne de commande.
  9. Exécutez la fonction writeToFile() dans l’invite de commande :
     writeToFile() 
  10. En utilisant l’invite de fichier, sélectionnez le fichier « sample.txt ». Une fois que JES a fini d’écrire dans le fichier, ouvrez « sample.txt » pour voir les nouvelles lignes ajoutées à la fin du fichier :
    Résultat de l'écriture dans le fichier texte
  11. Exécutez à nouveau la fonction writeToFile() dans la ligne de commande. Ouvrez le fichier « numbers.csv » pour visualiser les nouvelles valeurs des cellules ajoutées à la fin du fichier.
    Résultat de l'écriture dans le fichier CSV

Lecture et écriture de données de fichiers avec JES

L’écriture de données dans un fichier est une fonction extrêmement utile que vous pouvez utiliser si vous avez besoin de sauvegarder des données dans un programme.

Explorez d’autres façons de lire ou d’écrire dans des fichiers en utilisant Python. Vous pouvez par exemple utiliser des modules tels que Pandas ou Openpyxl.

Leave your vote

0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest
0 Commentaires
Commentaires en ligne
Afficher tous les commentaires

Log In

Forgot password?

Don't have an account? Register

Forgot password?

Enter your account data and we will send you a link to reset your password.

Your password reset link appears to be invalid or expired.

Log in

Privacy Policy

Add to Collection

No Collections

Here you'll find all collections you've created before.

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x

Newsletter

inscrivez vous pour recevoir nos actualités

Actualités, astuces, bons plans et cadeaux !