private void ConvertButton_Click(object sender, RoutedEventArgs e) { if (LoadData == null) { MessageBox.Show("没有加载文件", "提示", MessageBoxButton.OK, MessageBoxImage.Warning); return; } string fixedContent = LoadData.GetString("FixedContent"); int subCount = LoadData.GetInt("SubCount"); bool useSpecial = LoadData.GetBool("UseSpecial"); string specialContent = LoadData.GetString("SpecialContent"); bool useRandomCase = LoadData.GetBool("UseRandomCase"); string result = fixedContent + Password; result = SHA1(result); if (useSpecial) { for (int i = 0; i < specialContent.Length; i++) { if (i >= result.Length) { break; } Random indexRandom = new Random(result[i]); int index = indexRandom.Next(0, result.Length); result = result.Insert(index, specialContent[i].ToString()); } } if (useRandomCase) { for (int i = 0; i < result.Length; i++) { Random random = new Random(result[i]); double d = random.NextDouble(); if (d >= 0.5f) { string remove = result[i].ToString(); result = result.Remove(i, 1); result = result.Insert(i, remove.ToLower()); } } } result = result.Substring(0, subCount); Result.Text = result; }