NSPipe et création de fichiers

difnetdifnet Membre
janvier 2010 modifié dans Objective-C, Swift, C, C++ #1
Bonjour,

Toujours sur ma première application basée sur une NSTask, actuellement, l'application fonctionne et la tâche s'exécute parfaitement. Le résultat de l'exécution est affichée dans un NSTextView. Jusque là , pas de soucis.

Maintenant, j'aimerai que le résultat et ce qui est affiché dans le NSTextView soit enregistré dans un fichier.
J'ai cherché sur le web et j'ai quelques interrogations quant à  la méthode à  utiliser.

Etant donné que j'ai déjà  un Pipe et un setStandardOutput qui renvoient les données sur le NSTextview, comment dois je procéder pour les envoyer en plus dans un fichier (xml, txt, peu importe)?

Puis je créer ce fichier en conservant cette "structure" ou dois je créer un nouveau pipe avec un setStandardInput et un setStandardOuput ayant pour cible un NSFileManager?

Après recherche, il semble que la class pour créer mon fichier soit NSFileManager, quelqu'un peut me le confirmer? :)

J'ai cherché des exemples sur Internet mais pas grand chose correspond à  mon cas et j'avoue ne pas trop savoir comment procédé avec les Pipe, les input, les output etc ...

Si quelqu'un a déjà  rencontré le cas, je serai ravi d'en parler avec lui :)

Merci d'avance.

PS: Mauvaise section je pense, si un modo peut déplacer le topic :) Merci!

Réponses

  • ThibautThibaut Membre
    20:51 modifié #2
    Lors de la récupération des données, tu passes théoriquement par un NSData. Ensuite, tu convertis le NSData en NSString pour l'afficher dans le NSTextView. Non ?

    Avec le NSData, tu as 4 méthodes commençant par writeToFile: qui peuvent t'aider.
  • difnetdifnet Membre
    20:51 modifié #3
    Exact, en fait, pour l'affichage dans NSTextView, je me suis basé sur le TaskWrapper de Moriarity.

    Si j'ai bien compris, il n'est pas nécessaire d'utiliser NSFileManager. Avec le NSData existant, je peux envoyer les données au NSTextView et dans un fichier, exact?

  • ThibautThibaut Membre
    20:51 modifié #4
    Exact.
  • difnetdifnet Membre
    20:51 modifié #5
    Merci de l'info, je vais regarder ça ce soir :)
Connectez-vous ou Inscrivez-vous pour répondre.