Extrayez la description du code des données secondaires téléchargées via le formulaire upload request.totalbytes sous forme de fichier binaire.
Copiez le code comme suit :
<type d'entrée="fichier">
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13) & chrB(10)
diviseur=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf & bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mes données = midb (formdata, datastart, dataend)
formsize=request.totalbytes
Obtenez le nombre maximum d'octets téléchargés
-----------------------
formdata=request.binaryread(formsize)
Récupérer les données du formulaire à partir du flux binaire
-----------------------
bncrlf=chrB(13) & chrB(10)
Définir la variable de retour chariot crlf et de saut de ligne
----------------------------------
diviseur=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
Obtenez les données d'octet à gauche du premier crlf
instrb(formdata,bncrlf)-1 La machine vérifie que la valeur binaire de l'octet binaire crlf est moins un, ce qui correspond aux données binaires avant les informations d'indicateur. Il convient de noter que instrb renvoie clng, donc un clng est ajouté ici. redondant
----------------------------------
datastart=instrb(formdata,bncrlf & bncrlf)+4
Obtenez les données d'image et supprimez la position de départ des informations d'en-tête ajoutées par le formulaire, qui est la position de départ en octets des données réelles du fichier après la soumission de votre type=file dans le formulaire.
La position de deux crlfs consécutifs + 4 (c'est-à-dire la longueur de deux crlfg)
----------------------------------
dataend=instrb(datastart+1,formdata,divider)-datastart
La position des données + 1 obtenue à partir de ce qui précède est utilisée comme valeur de calcul de référence pour vérifier la fin des données. La position des premières informations d'en-tête du délimiteur de forme binaire est renvoyée à la position commençant par datastart + 1, puis la position relative. de datastar est soustrait.
----------------------------
mes données = midb (formdata, datastart, dataend)
midb() prend le format de bit de fin d'étoile des données du fichier téléchargé obtenu à travers de nombreux rebondissements.
ok --------------> Maintenant, extrayez proprement les données secondaires téléchargées
Note:
(1). Toutes les fonctions VB de la série *B sont traitées par octets. Elles doivent être utilisées pour traiter les systèmes secondaires.
(2) Une fois .type=file et les données de formulaire de type de formulaire correspondantes soumises, les informations d'en-tête correspondantes sont jointes à chaque champ de fichier.
Par conséquent, l’algorithme ci-dessus doit être utilisé pour trouver clairement les données réelles du fichier.
(3). Dans le même temps, les informations d'en-tête contiennent également les données du nom de fichier initial téléchargé, telles que c:/aaa/aaa.jpg. Les données du formulaire peuvent être traitées de la même manière pour extraire le nom de fichier préliminaire. des données du domaine de fichiers.
(4). Ces algorithmes sont dérivés des données de format fournies par la spécification http « form », donc les algorithmes de traitement de n'importe quelle entreprise sont similaires !