17-10-12, 09:54 PM
كاتب الموضوع : زيـــد
السلام عليكم بصراحة ما اعرف كيف ممكن تفيد هذه العملية بس حسب اعتقادي ممكن تفيد في عمل الباسوردات العشوائية لمواقع النت وهكذا . . . . . . . . . . . . . . المهم :
كيف يتم ذلك ؟
الــ String هو مصفوفة او مجموعة من الحروف Char يتم الوصول لكل حرف عن طريق الــ CharIndex
مهمتنا الان ان نجعل الــ CharIndex عشوائي اذا كان مثلا 1, 2 , 3 , 4 ليصبح 4, 2, 1, 3 وهكذا . . .
والشرط الاهم ان يكون بدون تكرار حتى لا يصير تضارب او تكرارات للأحرف
الدالة التالية RandomizeString تحوي باراميتر string OldString لجعله عشوائي :
كود :
[color=#000000][COLOR=#0000bb] [/color][color=#007700]private [/color][color=#0000bb]string RandomizeString[/color][color=#007700]([/color][color=#0000bb]string oldString[/color][COLOR=#007700])
{
[/COLOR][color=#0000bb]int[/color][color=#007700][] [/color][color=#0000bb]randomCharIndex[/color][COLOR=#007700];
[/COLOR][color=#0000bb]Random rnd [/color][color=#007700]= new [/color][color=#0000bb]Random[/color][COLOR=#007700]();
[/COLOR][color=#0000bb]HashSet[/color][color=#007700]<[/color][color=#0000bb]int[/color][color=#007700]> [/color][color=#0000bb]randomNumbers [/color][color=#007700]= new [/color][color=#0000bb]HashSet[/color][color=#007700]<[/color][color=#0000bb]int[/color][COLOR=#007700]>();
while ([/COLOR][color=#0000bb]randomNumbers[/color][color=#007700].[/color][color=#0000bb]Count [/color][color=#007700]< [/color][color=#0000bb]oldString[/color][color=#007700].[/color][color=#0000bb]Length[/color][COLOR=#007700])
[/COLOR][color=#0000bb]randomNumbers[/color][color=#007700].[/color][color=#0000bb]Add[/color][color=#007700]([/color][color=#0000bb]rnd[/color][color=#007700].[/color][color=#0000bb]Next[/color][color=#007700]([/color][color=#0000bb]0[/color][color=#007700], [/color][color=#0000bb]oldString[/color][color=#007700].[/color][color=#0000bb]Length[/color][COLOR=#007700]));
[/COLOR][color=#0000bb]randomCharIndex [/color][color=#007700]= [/color][color=#0000bb]randomNumbers[/color][color=#007700].[/color][color=#0000bb]ToArray[/color][COLOR=#007700]();
[/COLOR][color=#0000bb]string newString [/color][color=#007700]= [/color][color=#dd0000]""[/color][COLOR=#007700];
for ([/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i [/color][color=#007700]< [/color][color=#0000bb]oldString[/color][color=#007700].[/color][color=#0000bb]Length[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++)
[/COLOR][color=#0000bb]newString [/color][color=#007700]+= [/color][color=#0000bb]oldString[/color][color=#007700][[/color][color=#0000bb]randomCharIndex[/color][color=#007700][[/color][color=#0000bb]i[/color][COLOR=#007700]]];
return [/COLOR][color=#0000bb]newString[/color][COLOR=#007700];
}
[/COLOR][color=#0000bb][/color][/COLOR]
وايضا تجدون مثال بالمرفقات . . . تحياتي وبالتوفيق للكل