Le mieux ou le moins mal est de procéder en deux phases :

1. Réception et normalisation des données
2. Stockage et exploitation

Pour la normalisation, vous aurez sans doute besoin d'écrire un peu de code, par lequel vous ferez les conversions vers les unités que vous utiliserez pour le calcul, le tri ou toute autre opération. C'est à vous de déterminer l'unité la plus appropriée en fonction des valeurs d'entrée et de la précision souhaitée.

A priori vous pourriez passer par une macro BASIC, mais ça peut tout aussi bien être fait par un programme externe, dédié, écrit en n'importe quoi que vous maitrisez.

Quant à l'approche proprement dite, en gros vous recevez vos données sous la forme de chaînes de caractères. Il vous faut donc séparer le bon grain de l'ivraie, la valeur numérique des unités. Une fois que vous savez que 3,25Go veut dire 3,25 à multiplier par 1 Go et vous stockez le résultat en Giga octets si c'est ce qui vous arrange. Ou vous utilisez le facteur que vous souhaitez et vous stockez des Ko, des Mo ou des Po si vous préférez.



Le 30/11/2020 à 11:07, Olivier Marti a écrit :
Le 30 nov. 2020 à 10:31, Jean-Luc <[email protected]> a écrit :

Bonjour
À première vue, je ne pense pas que ça soit une bonne idée.

1 Go + 1 octet ça fait combien ? 1 Go, 1 072 741 825 octets ? 1048576, ? Ko
Difficile de définir des règles de gestion d'arrondi générique

À mon avis, Il vaut mieux choisir une unité, qui va bien en fonction du 
contexte, et enregistrer / stocker les données dans cette unité.
ça n'empêche pas d'afficher dans une autre, de saisir dans une troisième si on 
a envie
On va évidemment plutôt utiliser des unités proches. Go et Mo par exemple. Et 
mon problème est plus de faire du tri que des opérations.

Je reçoit des données dans un format que je ne maitrise pas forcément, et je ne 
vois pas de solution pour les convertir dans une unité unique.

Olivier


--
Envoyez un mail à [email protected] pour vous désinscrire
Les archives de la liste sont disponibles à 
https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Répondre à