في 11 أبريل 2009، كنت قد أكملت بالفعل تنفيذ التعليمات البرمجية، ولكن لم يكن لدي الوقت الكافي لكتابة هذه المقالة، لذلك أخذت الوقت الكافي اليوم لتعويض هذه المقالة، وكذلك لعشاق ASP لدينا، قم بتسليم حساء لذيذ لملء الفجوة في تحويل ترميز ASP. خلفية المقال:
في أحد الأيام، أطلعني أحد زملائي على مقالة على CSDN حول تصنيفات لغات البرمجة، ورأيت فيها أن VB حصل على تصنيف جيد جدًا، لذلك قلت إن asp (vbscript) جيد جدًا بالفعل. ونتيجة لذلك، دحضني وقال إن ASP ليس جيدًا ويصعب تحقيق الكثير من الأشياء. ماذا قلت؟ لقد قمت بتطوير ASP منذ عدة سنوات ولم أجد أي شيء يصعب تنفيذه، إلا إذا كان ضمن نطاق اللغات غير النصية، مثل التطبيقات متعددة الخيوط (بالطبع، يمكن لـ ASP أيضًا محاكاة المهام متعددة الخيوط)، وما إلى ذلك. ونتيجة لذلك، تحدث عن تعدد الخيوط وتحويل التعليمات البرمجية وما إلى ذلك. وقال إنه بذل الكثير من الجهد لتحويل التعليمات البرمجية دون نجاح، لذلك شعر أن ASP كان ضعيفًا للغاية. عند سماع ذلك، علمنا أن أساس البرمجة الخاص به لم يكن قويًا بما فيه الكفاية، وأن معرفته بـ ASP كانت محدودة للغاية (وقال لاحقًا إنه لا يعرف أو يستخدم العديد من الكائنات الأساسية شائعة الاستخدام في ASP. لقد كدت أن أغمي عليه. في الماضي - لم أستخدم هذا من قبل وأخبرتني أن ASP ضعيف. ، يبدو... أنا كبير في السن، ولا أفهم حتى أنه لا أساس ولا حق في الكلام! هههه...)، لذا، في نوبة غضب، أدركت مشكلة تشفير ASP التحويل المتبادل في نهاية هذا الأسبوع دعه يرى ما هو ASP. إنه في الواقع ينظر باستخفاف إلى ASP كثيرًا. إنه يشعر بالغضب الشديد بمجرد التفكير في الأمر. بالطبع، بحثي يسد أيضًا الفجوة في البحث حول تحويل التشفير في تطوير ASP حتى الآن!
الآن، دعنا ننتقل إلى العمل أولاً، دعونا نفهم عملية تحويل الترميز. إذا أردنا تحويل ترميز جزء من النص، فنحن بحاجة إلى معرفة مجموعة الترميز المقابلة للنص الحالي، ثم استخدام الترميز المقابل. اضبط على قراءته. هذه هي الفرضية هي أن التشفير قد تم تحويله بشكل صحيح (إذا كانت هذه الخطوة خاطئة، فسيكون الكود المحول عبارة عن سلسلة من الرموز المشوهة)! حسنًا، بعد العثور على الترميز الحالي وقراءته بشكل صحيح، يمكننا استخدام كائن الدفق مع مجموعة الترميز الهدف لحفظ المحتوى في الملف المحدد. في هذه المرحلة، يكون تحويل الترميز ناجحًا!
دعونا نلقي نظرة على تنفيذ التعليمات البرمجية المحددة لتحويل ترميز asp:
انسخ رمز الكود كما يلي:
'تحويل محتوى الترميز المحتوى المراد تحويله، ترميز الهدف cset، المسار المطلق للملف الهدف
وظيفة TransferCharSet (المحتوى، cset، dest)
خافت Objstream
تعيين Objstream = Server.CreateObject(adodb.stream)
objstream.Mode =3
objstream.Charset = cset
objstream.Type = 2
objstream.Open
محتوى objstream.WriteText
objstream.Position = 0
objstream.SaveToFile dest,2
objstream.Close
تعيين objstream = لا شيء
وظيفة النهاية
'اقرأ المحتوى المحدد باستخدام الترميز المقابل
وظيفة الحصول على المحتوى (المسار)
خافت Objstream
تعيين Objstream = Server.CreateObject(Adodb.Stream)
objstream.Charset = GetCharSetName(المسار)
objstream.Type = 2
objstream.Mode =3
'objstream.Charset = code
objstream.Open
مسار Objstream.LoadFromFile
objstream.Position = 0
getcontent = objstream.ReadText
objstream.Close
تعيين objstream = لا شيء
وظيفة النهاية
'احصل على اسم الترميز للمحتوى المحدد
الدالة GetCharSetName(المسار)
تعيين objstream=server.createobject(Adodb.Stream)
objstream.Type=1
objstream.mode=3
objstream.open
objstream.Position=0
مسار objstream.loadfromfile
بينتو=objstream.read(2)
إذا كان AscB(MidB(bintou,1,1))=&HEF و AscB(MidB(bintou,2,1))=&HBB إذن
GetCharSetName=utf-8
ElseIf AscB(MidB(bintou,1,1))=&HFF و AscB(MidB(bintou,2,1))=&HFE ثم
GetCharSetName=unicode
آخر
GetCharSetName=gb2312
نهاية إذا
objstream. Close
تعيين objstream = لا شيء
وظيفة النهاية
حسنًا، بعد هذا الجزء من الكود، اكتملت أعمال التحويل لدينا! آمل أن يقدم هذا المقال بعض المساعدة والإلهام لعشاق لغة ASP وعشاق اللغات الآخرين.
أخيرًا، ما أريد قوله هو أن تعلم واستخدام لغات البرمجة ليس بالأمر الصعب، المهم هو استخدام عقلك أكثر والتفكير في كيفية تنفيذ الوظائف التي تحتاجها، بدلاً من إلقاء اللوم على الآخرين والقول إن اللغة هي اللغة. ضعيف جدا.
حسنًا، أتمنى لكم جميعًا برمجة سعيدة، وسأكتب عن تحويل ترميز asp هنا، وسأقوم بنشر المزيد من المقالات الأصلية المثيرة في المستقبل، شكرًا لكم جميعًا.