Extrahieren Sie die Codebeschreibung der hochgeladenen Sekundärdaten über das Formular „Upload request.totalbytes“ als Binärdatei.
Kopieren Sie den Codecode wie folgt:
<Eingabetyp="Datei">
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13) & chrB(10)
Divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf & bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
formsize=request.totalbytes
Holen Sie sich die maximale Anzahl hochgeladener Bytes
---------
formdata=request.binaryread(formsize)
Formulardaten aus Binärstream abrufen
---------
bncrlf=chrB(13) & chrB(10)
Legen Sie die CRLF-Wagenrücklauf- und Zeilenvorschubcode-Variable fest
----------------------------------
Divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
Holen Sie sich die Bytedaten links vom ersten CRLF
instrb(formdata,bncrlf)-1 Die Maschine prüft, ob der Bitwert des CRLF-Binärbytes minus eins ist. Dies sind die Binärdaten vor den Flag-Informationen. Es ist zu beachten, dass instrb clng zurückgibt, daher wird hier ein clng hinzugefügt. überflüssig
----------------------------------
datastart=instrb(formdata,bncrlf & bncrlf)+4
Rufen Sie die Bilddaten ab und entfernen Sie die Startposition der vom Formular hinzugefügten Header-Informationen. Dies ist die Byte-Startposition der tatsächlichen Dateidaten, nachdem Ihr Typ = Datei im Formular übermittelt wurde.
Die Position von zwei aufeinanderfolgenden CRLFs + 4 (d. h. die Länge von zwei CRLFGs)
----------------------------------
dataend=instrb(datastart+1,formdata,divider)-datastart
Die oben erhaltene Datenposition + 1 wird als Referenzberechnungswert verwendet, um das Ende der Daten zu überprüfen. Die Position der ersten Binärform-Trennzeichen-Header-Informationen wird an der Position ab Datenstart + 1 und dann an der relativen Position zurückgegeben von datastar wird abgezogen.
--------------
mydata=midb(formdata,datastart,dataend)
midb() übernimmt das Stern-End-Bitformat der hochgeladenen Dateidaten, die durch viele Drehungen und Wendungen erhalten wurden.
ok --------------> Extrahieren Sie nun die hochgeladenen Sekundärdaten sauber
Notiz:
(1). Alle VB-Funktionen der *B-Serie werden byteweise verarbeitet. Sie müssen zur Verarbeitung sekundärer Systeme verwendet werden.
(2) Nachdem .type=file und die entsprechenden Formulardaten übermittelt wurden, werden jedem Dateifeld entsprechende Header-Informationen angehängt.
Daher muss der obige Algorithmus verwendet werden, um die tatsächlichen Dateidaten eindeutig zu finden.
(3) Gleichzeitig enthalten die Header-Informationen auch die Daten des hochgeladenen ursprünglichen Dateinamens, z. B. c:/aaa/aaa.jpg. Die Formulardatendaten können auf die gleiche Weise verarbeitet werden, um den vorläufigen Dateinamen zu extrahieren der Dateidomänendaten.
(4) Diese Algorithmen werden aus den Formatdaten abgeleitet, die von der http-Formularspezifikation bereitgestellt werden, sodass die Verarbeitungsalgorithmen aller Unternehmen ähnlich sind!