Cette déclaration (en Delphi 7)Delphi Format Strings - limites pour les valeurs de largeur et de précision?
writeln(logfile,format('%16.16d ',[FileInfo.size])+full_name);
résultats dans cette sortie
0000000021239384 C:\DATA\DELPHI\sxf_archive10-13.zip
Cette déclaration
writeln(logfile,format('%17.17d ',[FileInfo.size])+full_name);
résultats dans cette sortie
21239384 C:\DATA\DELPHI\sxf_archive10-13.zip
Le remplissage avec des zéros en tête change en espaces de début lorsque le spécificateur de précision est supérieur à 16. L'aide indique "Si la chaîne de format contient un spécificateur de précision, elle indique que la chaîne résultante doit contenir au moins le nombre de chiffres spécifié; si la valeur a moins de chiffres, la chaîne résultante est à gauche rembourré avec des zéros. »
Y at-il une autre façon de formater un entier de 20 caractères avec zéros?
Merci! C'est la bonne façon de le faire - si je n'avais pas fait le bit de taille 64, il aurait finalement échoué sur un fichier de> 2 Go. Lorsque j'ai ajouté l'unité "windows" à la liste des utilisations pour le type ULARGE_INTEGER, cela a causé une erreur ailleurs sur "Findclose". J'ai dû rechercher que l'unité Windows définit une procédure findclose différente, donc j'ai dû changer mon utilisation à Sysutils.findclose. – tim11g