Fonction Lire un fichier binaire avec préallocation
- Mise à jour2025-07-30
- Temps de lecture : 7 minute(s)
Reads binary data from a file and places the data into an array that you have already allocated without incurring a copy of the data. Unlike the Read from Binary File function, this function avoids run-time memory allocations.
Les performances de cette fonction dépendent du tableau que vous préallouez.
Le connecteur affiche les types de données par défaut de cette fonction polymorphe.

Entrées/Sorties
refnum en entrée
—
refnum en entrée spécifie le refnum de fichier associé au fichier que vous souhaitez lire.
données en entrée
—
données en entrée spécifie le tableau en entrée dans lequel placer les données. Cette fonction essaie de lire tous les éléments de données du tableau. Reportez-vous au tableau de support pour en savoir plus sur les tableaux et les types de données supportés par cette fonction.
ordre des octets (0 : big-Endian, network order)
—
ordre des octets définit le format Endian des données résultantes. L'ordre des octets, ou format Endian, indique si les entiers sont représentés en mémoire de l'octet de poids fort à celui de poids faible ou vice-versa. La fonction doit lire les données dans l'ordre des octets correspondant à l'ordre d'écriture des données. Remarque Pour cette fonction, vous devez définir le paramètre ordre des octets pour qu'il corresponde à l'ordre des octets natif de l'ordinateur hôte qui exécute LabVIEW. Si l'ordinateur est big endian, choisissez native, host order ou big-endian, network order> endian form. Si l'ordinateur est de type little endian, choisissez la forme native, host order ou little-endian endian.
entrée d'erreur
—
entrée d'erreur décrit les conditions d'erreur qui ont lieu avant l'exécution de ce nœud. Cette entrée fournit la fonctionnalité entrée d'erreur standard.
refnum en sortie
—
refnum en sortie est le refnum du fichier que la fonction a lu. Vous pouvez câbler cette sortie à une autre fonction de fichier.
données en sortie
—
données en sortie contient les données lues à partir du fichier. Cette sortie n'est pas redimensionnable pour n'inclure que les données valides. Si LabVIEW atteint la fin du fichier avant que le tableau données en entrée soit plein, le tableau contient des éléments non valides. Utilisez la sortie nb d'éléments lus pour déterminer la quantité exacte de données valides dans données en sortie. Si LabVIEW n'atteint pas la fin du fichier avant que le tableau données en entrée soit plein, il laisse le pointeur du fichier là où la lecture s'est terminée pour que la prochaine lecture commence là.
nb d'éléments lus
—
nb d'éléments lus renvoie le nombre total d'éléments du tableau données en entrée remplacés par les données du fichier.
sortie d'erreur
—
sortie d'erreur contient des informations sur l'erreur. Cette sortie fournit la fonctionnalité sortie d'erreur standard. |
Le diagramme suivant est un exemple du fonctionnement de cette fonction avec un tableau pré-alloué. À chaque fois que la fonction Lire un fichier binaire avec préallocation s'exécute, LabVIEW place les données du fichier dans le même tableau.

Support de Lire un fichier binaire avec préallocation
Cette fonction fournit différents niveaux de support pour les tableaux que vous câblez pour recevoir les données du fichier :
Entièrement pris en charge. Comme cette fonction ne requiert pas de nouvelle allocation, elle est probablement plus rapide que la fonction Lire un fichier binaire.
Soutenu par l'État. Comme cette fonction requiert une nouvelle allocation et une nouvelle copie, elle est probablement plus lente que la fonction Lire un fichier binaire.
Non accepté par la fonction.
Le tableau suivant décrit le support fourni lorsque le tableau que vous câblez à données en entrée est un tableau spécifique ou une tranche de tableau qui contient un type de données particulier.
| Type de données | Tableau | Tranche de tableau contiguë | Tranche de tableau non contiguë1 |
|---|---|---|---|
| Entiers | ![]() | ![]() | ![]() |
| Nombre à virgule flottante, simple précision | ![]() | ![]() | ![]() |
| Nombre à virgule flottante, double précision | ![]() | ![]() | ![]() |
| Précision étendue, virgule flottante numérique² | ![]() | ![]() | ![]() |
| Nombre complexe à virgule flottante, simple précision | ![]() | ![]() | ![]() |
| Nombre complexe à virgule flottante, double précision | ![]() | ![]() | ![]() |
| Numérique complexe à précision étendue, à virgule flottante² | ![]() | ![]() | ![]() |
| Numérique à virgule fixe² | ![]() | ![]() | ![]() |
| Booléen | ![]() | ![]() | ![]() |
| Chaîne | ![]() | ![]() | ![]() |
| Tous les autres types de données | ![]() | ![]() | ![]() |
- LabVIEW doit faire une copie en mémoire d'une tranche de tableau non contiguë. Par conséquent, la fonction Lire un fichier binaire avec préallocation n'est pas plus rapide que la fonction Lire un fichier binaire si vous câblez une tranche de tableau non contiguë à données en entrée.
- La fonction Lire un fichier binaire avec préallocation accepte les données à précision étendue, complexes ou non, et les données à virgule fixe. Cependant, cette fonction alloue de la mémoire pour une nouvelle copie avec ces types de données, comme la fonction Read from Binary File, parce qu'elle ne peut pas placer les données dans une allocation existante.
Cette fonction supporte aussi pleinement tous les types de données mentionnés dans le tableau comme valeurs scalaires ne se trouvant pas dans des tableaux.
refnum en entrée
—
données en entrée
—
ordre des octets (0 : big-Endian, network order)
—
entrée d'erreur
—
refnum en sortie
—
données en sortie
—
nb d'éléments lus
—
sortie d'erreur
—