Posté le 07/11/2020 15:33
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 238 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 07/11/2020 15:41 | #
Tous les fichiers se lisent de la même façon, BFile_Read() charge les octets du fichier et ensuite c'est toi qui vois comment tu veux l'interpréter.
Citer : Posté le 07/11/2020 15:42 | #
on fais comment pour interpréter en texte?
Citer : Posté le 07/11/2020 15:44 | #
Grace à un dico octet -> char ? Voilà
Citer : Posté le 07/11/2020 15:45 | #
ok...
Citer : Posté le 07/11/2020 15:49 | #
Grace à un dico octet -> char ? Voilà
Hein ? Pardon ?
Non tu prends juste un char * sur les données. Tu crées ton gros buffer, char contenus_du_fichier[taille_du_fichier], puis tu fais BFile_Read() dessus.
Citer : Posté le 07/11/2020 16:03 | #
Pardon
Ne m'écoutez pas
Citer : Posté le 07/11/2020 16:04 | #
Euh désolé j'ai été un peu sec. J'ai vraiment en tête qu'il y a deux domaines qui échappent beaucoup aux débutants ici : la mémoire et la représentation des données. J'écrirai peut-être des tutoriels là-dessus...
Citer : Posté le 07/11/2020 19:24 | #
Je plussoie l'idée : je serais peut-être un peu moins largué après lecture...
Citer : Posté le 07/11/2020 20:22 | #
Not surprising, lots of people move from languages like Python and JS or BASIC to C when they discover calc programming (me being one of them ).
Citer : Posté le 07/11/2020 20:36 | #
c'est comme ca?
BFile_Open(filename,BFile_ReadOnly);
Citer : Posté le 07/11/2020 20:40 | #
Bon début ! Tu dois stocker la valeur de retour de BFile_Open(), généralement on l'appelle int fd. Tu en auras besoin pour toutes les autres fonctions !
Citer : Posté le 07/11/2020 20:40 | #
The filename must have the storage memory identifier in the front - i.e. const uint16_t *filename = u"\\\\fls0\\stf.txt".
You should probably search for the file first to ensure it exists before trying to open it, the headers will show you how to use Bfile_FindFirst etc.
You need a descriptor when opening a file, it lets you keep track of the file hook e.g. int descriptor = BFile_Open(filename, BFile_ReadOnly).
Citer : Posté le 07/11/2020 21:33 | #
c'est quoi les arguments de Bfile_read() ?
Citer : Posté le 07/11/2020 21:36 | #
Oubli que Yatis a mentionné sur la shoutbox : il faut un u devant la chaîne de caractères : u"\\\\fls0\\stf.txt", sinon tu obtiens un const char *, pas un const uint16_t *.
Regarde la doc pour les arguments de BFile_Read(), plus spécifiquement bfile.h.
Citer : Posté le 07/11/2020 21:54 | #
justement si je te demande c'est car j'ai pas compris
Citer : Posté le 07/11/2020 22:07 | #
BFile_Read(descriptor, (void *)buffer, <whatever the size of your file is>, 0) - the header is pretty self-explanatory.
Note: Make sure you've allocated at least the size of the file for the buffer or you will likely crash the calc.
Citer : Posté le 07/11/2020 22:09 | #
je sans pas ce que c'est le descriptor,le buffer et le 0
Citer : Posté le 07/11/2020 22:12 | #
I went over the descriptor in a previous comment.
The buffer is the thing you're reading the file into - e.g. char *buffer = malloc(file_size). This will contain the contents of the file after you call BFile_Read.
The 0 just tells BFile_Read you want to read from the zeroth byte (start of the file).
Citer : Posté le 07/11/2020 22:13 | #
ok
Citer : Posté le 07/11/2020 22:14 | #
justement si je te demande c'est car j'ai pas compris
Dans ce cas pose une question plus précise : « que veut dire cet argument » ou bien « comment je crée le buffer » par exemple.