Vor kurzem arbeite ich an diesem Ding und kann online keine ASP-bezogenen Dinge finden. Wenn jemand es sehr früh macht, scherze nicht. Es dauerte lange, um es endlich zu erledigen;
Prinzip: Verwenden Sie das Stream-Objekt, um die ersten beiden Bytes der Datei zu lesen, die Codierung von UTF-8, Unicode und ANSI zu analysieren und zu bestimmen (vereinfachtes chinesisches Betriebssystem, d. H. GB2312)
Verwandte Informationen:
ANSI: Unformatierte Definition;
Unicode: Die ersten beiden Bytes sind fffe;
UNICODEBIGENDIAN: Die ersten beiden Bytes sind Feff;
UTF-8: Die ersten beiden Bytes sind EFBB;
Kopieren Sie den Code wie folgt: FunctionCheckcode (Pfad)
setObjstream = server.createObject ("adodb.stream")
objstream.type = 1
objstream.mode = 3
objstream.open
objstream.position = 0
objstream.loadfromfilepath
Bintou = objstream.read (2)
IFASCB (MIDB (BINTOU, 1,1)) = & Hefandascb (Midb (Bintou, 2,1)) = & HbBthen
checkcoder = "utf-8"
Elseifascb (Midb (Bintou, 1,1)) = & hffandascb (Midb (Bintou, 2,1)) = & Hfethen
checkcode = "unicode"
Anders
checkcode = "gb2312"
Endif
objstream.close
setObjstream = nichts
Endfunktion
Wieder auffüllen:
Xie Xiaoyu erinnerte daran, dass der vorherige einfach Unsinn war; Die lokale Codierung von ANSI wird von jedem Land selbst definiert, und es gibt kein festes Datei -Header -Format. Unter dem chinesischen operativen System des chinesischen Festlandes ist es lesbar GB2312, und unter anderen Sprachsystemen ist es verstümmelt, sodass es nicht nötig ist, diesen Teil im Detail zu unterscheiden.
Holen Sie sich die Dateicodierung, und der Stream -Stream kann nach der erforderlichen Codierung geöffnet werden, und es gibt keinen verstümmelten Code.