أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

فرز قاموس البرمجة المشتركة(SSP) سلسلة البيانات

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية246067
إخلاء مسؤولية من محتوى قديم في قاعدة المعارف
عن تقديم الدعم التقني لهاو لذلك تظهر هذه المقالة كما هي و لن يتم تحديثها Microsoft تمت كتابة هذه المقالة بخصوص منتجات توقفت
الموجز
كائن "البرمجة القاموس" هو المكافئ الصفيف للاقتران PERL ، حيث يتم تخزين المعلومات في صفيف يتكون من مفاتيح فريدة بيانات العنصر. تعداد خلال الصفيف بسبب تخزين هذه المعلومات التي لم يتم فرزها بالحروف بإرجاع معلومات بالترتيب الذي تم تخزينه. الغرض من هذه المقالة هو تعريف الدالة SortDictionary() فرز محتويات الكائن القاموس تعبئة مع بيانات سلسلة المفتاح أو العنصر.
معلومات أخرى
يحدد المثال التالي من التعليمات البرمجية ثوابت جهازي dictKey و dictItem يتم استخدامه من قبل الدالة SortDictionary(). تأخذ الدالة SortDictionary() معلمتين من معلمات كائن تم إنشاؤها مسبقاً قاموس البرمجة نصية "و" أحد الثوابت لتحديد ما إذا كان سيتم فرز حسب مفاتيح أو عناصر في القاموس.

Const dictKey  = 1Const dictItem = 2Function SortDictionary(objDict,intSort)  ' declare our variables  Dim strDict()  Dim objKey  Dim strKey,strItem  Dim X,Y,Z  ' get the dictionary count  Z = objDict.Count  ' we need more than one item to warrant sorting  If Z > 1 Then    ' create an array to store dictionary information    ReDim strDict(Z,2)    X = 0    ' populate the string array    For Each objKey In objDict        strDict(X,dictKey)  = CStr(objKey)        strDict(X,dictItem) = CStr(objDict(objKey))        X = X + 1    Next    ' perform a a shell sort of the string array    For X = 0 to (Z - 2)      For Y = X to (Z - 1)        If StrComp(strDict(X,intSort),strDict(Y,intSort),vbTextCompare) > 0 Then            strKey  = strDict(X,dictKey)            strItem = strDict(X,dictItem)            strDict(X,dictKey)  = strDict(Y,dictKey)            strDict(X,dictItem) = strDict(Y,dictItem)            strDict(Y,dictKey)  = strKey            strDict(Y,dictItem) = strItem        End If      Next    Next    ' erase the contents of the dictionary object    objDict.RemoveAll    ' repopulate the dictionary with the sorted information    For X = 0 to (Z - 1)      objDict.Add strDict(X,dictKey), strDict(X,dictItem)    Next  End IfEnd Function				

A العمل مثال

المثال التالي استخدام يجعل الدالة أعلاه.

ملاحظة: تمت إزالة كافة التعليقات من دالة الفرز الفعلي في هذا المثال.

قم بنسخ التعليمة البرمجية لـ ASP التالية ثم البرامج الحفظ إلى مجلد حيث Sortdemo.asp مع الأقل النصية الوصول:
<%@LANGUAGE="VBSCRIPT"%><% Option Explicit %><html><head><title>Dictionary Sorting</title></head><body><%  Dim d, i  Const dictKey  = 1  Const dictItem = 2  Set d = Server.CreateObject("Scripting.Dictionary")  d.Add "3", "Delta"  d.Add "1", "Foxtrot"  d.Add "4", "Bravo"  d.Add "2", "Echo"  d.Add "6", "Alpha"  d.Add "5", "Charlie"  Response.Write "<p>Before Sorting:<br>"  For Each i In d    Response.Write i & "=" & d(i) & "<br>"  Next  Response.Write "<p>By Key:<br>"  SortDictionary d,dictKey  For Each i In d    Response.Write i & "=" & d(i) & "<br>"  Next  Response.Write "<p>By Item:<br>"  SortDictionary d,dictItem  For Each i In d    Response.Write d(i) & "=" & i & "<br>"  Next%></body></html><%  Function SortDictionary(objDict,intSort)    Dim strDict()    Dim objKey    Dim strKey,strItem    Dim X,Y,Z    Z = objDict.Count    If Z > 1 Then      ReDim strDict(Z,2)      X = 0      For Each objKey In objDict          strDict(X,dictKey)  = CStr(objKey)          strDict(X,dictItem) = CStr(objDict(objKey))          X = X + 1      Next      For X = 0 to (Z - 2)        For Y = X to (Z - 1)          If StrComp(strDict(X,intSort),strDict(Y,intSort),vbTextCompare) > 0 Then              strKey  = strDict(X,dictKey)              strItem = strDict(X,dictItem)              strDict(X,dictKey)  = strDict(Y,dictKey)              strDict(X,dictItem) = strDict(Y,dictItem)              strDict(Y,dictKey)  = strKey              strDict(Y,dictItem) = strItem          End If        Next      Next      objDict.RemoveAll      For X = 0 to (Z - 1)        objDict.Add strDict(X,dictKey), strDict(X,dictItem)      Next    End If  End Function%>				
عند استعراض, يجب أن يتم عرض الإخراج التالي:
Before Sorting:3=Delta1=Foxtrot4=Bravo2=Echo6=Alpha5=CharlieBy Key:1=Foxtrot2=Echo3=Delta4=Bravo5=Charlie6=AlphaBy Item:Alpha=6Bravo=4Charlie=5Delta=3Echo=2Foxtrot=1				

تقدم Microsoft الأمثلة البرمجية فقط دون أي ضمان التعبير عن أو ضمنية. هذا يتضمن ولكن لم يقتصر على الضمانات الضمنية الخاصة بالتجارة أو الملاءمة لغرض معين. تفترض هذه المقالة تكون مألوفة مع لغة البرمجة التي يتم شرحها مع الأدوات التي يتم استخدامها لإنشاء لتصحيح الإجراءات. يمكن لمهندسي الدعم لدى Microsoft شرح وظيفة إجراء محدد ولكن لن يقوموا بتعديل هذه الأمثلة لتقديم وظيفة إضافية أو إنشاء إجراءات تستوفي متطلبات محددة. للحصول على مزيد من المعلومات حول خيارات الدعم المتوفرة وحول كيفية الاتصال بشركة Microsoft قم بزيارة موقع Microsoft التالي على الويب:
مراجع
للحصول على مزيد من المعلومات حول تقنيات البرمجة النصية لـ Microsoft "، راجع موقع Microsoft على ويب الشبكة المطور على URL التالي:
iis

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 246067 - آخر مراجعة: 08/08/2007 06:48:23 - المراجعة: 3.3

Microsoft Internet Information Services 5.0

  • kbmt kbinfo KB246067 KbMtar
تعليقات
mp;t=">sync=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" >id="{{'language-'+language.locale}}" href="" ng-click="setLanguage(language);" class="ng-binding" id="language-es-ve">Venezuela - Español
/c1.microsoft.com/c.gif?DI=4050&did=1&t=">p;t="> 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write("