Le 11 avril 2009, j'avais déjà terminé l'implémentation du code, mais je n'ai jamais eu le temps d'écrire cet article, j'ai donc pris le temps aujourd'hui de rattraper cet article, et aussi pour nos passionnés d'ASP Donnez une délicieuse soupe à remplir l'écart dans la conversion du codage asp. Contexte de l'article :
Un jour, un de mes collègues m'a montré un article sur CSDN sur le classement des langages de programmation. J'y ai vu que VB se classait très bien, alors j'ai dit que asp (vbscript) était en effet plutôt bon. En conséquence, il m'a réfuté et a dit que l'ASP n'est pas bon et que beaucoup de choses sont difficiles à réaliser. Qu'ai-je dit ? Je développe ASP depuis plusieurs années et je n'ai rien trouvé de difficile à mettre en œuvre, sauf dans le cadre de langages non scriptés, comme les applications multithread (bien sûr, ASP peut également simuler des tâches multithread), etc. En conséquence, il a parlé de multi-threading, de conversion de code, etc. Il a dit qu'il avait déployé beaucoup d'efforts pour convertir le code sans succès, il pensait donc qu'ASP était trop faible. En entendant cela, nous savions que ses bases de programmation n'étaient pas assez solides et que sa connaissance d'ASP était très limitée (et plus tard, il a dit qu'il ne connaissait pas ou n'utilisait pas plusieurs objets de base couramment utilisés d'ASP. J'ai failli m'évanouir. Dans le passé - Je ne l'ai même pas utilisé auparavant et je m'ai dit qu'ASP était faible. , on dirait... je suis si vieux, je ne comprends même pas qu'il n'y a ni fondement ni droit de parler Haha...), alors, dans un accès de colère, j'ai réalisé le problème de l'encodage ASP ! conversion mutuelle ce week-end. Laissez-lui voir ce qu'est l'ASP. Il méprise tellement l'ASP qu'il se met très en colère rien que d'y penser ! Bien entendu, mes recherches comblent également les lacunes des recherches menées jusqu’à présent sur la conversion de l’encodage dans le développement ASP !
Passons maintenant aux choses sérieuses. Commençons par comprendre le processus de conversion de l'encodage. Si nous voulons convertir l'encodage d'un morceau de texte, nous devons connaître l'ensemble d'encodage correspondant au texte actuel, puis utiliser l'encodage correspondant. configuré pour le lire. Le principe est que l'encodage est converti correctement (si cette étape est erronée, le code converti sera une série de codes tronqués) ! D'accord, après avoir trouvé l'encodage actuel et l'avoir lu correctement, nous pouvons utiliser l'objet Stream avec l'encodage cible défini pour enregistrer le contenu dans le fichier spécifié. À ce stade, notre conversion d'encodage est réussie !
Jetons un coup d'œil à l'implémentation spécifique du code de la conversion de l'encodage asp :
Copiez le code comme suit :
'Convertir le contenu d'encodage Le contenu à convertir, l'encodage cible cset, le chemin absolu du fichier cible dest
Fonction TransferCharSet(content, cset, dest)
Dim Objstream
Définir Objstream = Server.CreateObject (adodb.stream)
objstream.Mode =3
objstream.Charset = cset
objstream.Type = 2
objstream.Ouvrir
contenu objstream.WriteText
objstream.Position = 0
objstream.SaveToFile dest,2
objstream.Fermer
définir objstream = rien
Fonction de fin
'Lire le contenu spécifié en utilisant l'encodage correspondant
Fonction getcontent(chemin)
Dim Objstream
Définir Objstream = Server.CreateObject (Adodb.Stream)
objstream.Charset = GetCharSetName (chemin)
objstream.Type = 2
objstream.Mode =3
'objstream.Charset = code
objstream.Ouvrir
Chemin Objstream.LoadFromFile
objstream.Position = 0
getcontent = objstream.ReadText
objstream.Fermer
définir objstream = rien
Fonction de fin
'Obtenir le nom d'encodage du contenu spécifié
Fonction GetCharSetName (chemin)
Définir objstream=server.createobject(Adodb.Stream)
objstream.Type=1
objstream.mode=3
objstream.open
objstream.Position=0
chemin objstream.loadfromfile
bintou=objstream.read(2)
Si AscB(MidB(bintou,1,1))=&HEF Et AscB(MidB(bintou,2,1))=&HBB Alors
GetCharSetName=utf-8
SinonSi AscB(MidB(bintou,1,1))=&HFF Et AscB(MidB(bintou,2,1))=&HFE Alors
GetCharSetName=unicode
Autre
GetCharSetName=gb2312
Fin si
objstream.close
Définir objstream = rien
Fonction de fin
Bon, après ce morceau de code, notre travail de conversion est terminé ! J'espère que cet article pourra apporter de l'aide et de l'inspiration aux passionnés d'ASP et à d'autres passionnés de langues.
Enfin, ce que je veux dire, c'est qu'apprendre et utiliser les langages de programmation n'est pas difficile. L'important est d'utiliser davantage votre cerveau et de réfléchir à la manière de mettre en œuvre les fonctions dont vous avez besoin, au lieu de blâmer les autres et de dire que le langage est mauvais. trop faible.
Eh bien, je vous souhaite à tous une bonne programmation. J'écrirai ici sur la conversion d'encodage d'asp et je publierai des articles personnels originaux plus passionnants à l'avenir. Merci à tous !