2009-10-24 9 views

Odpowiedz

24
string newString = new string('*', oldString.Length); 

Oczywiście służy do wyświetlania odpowiedników haseł, lepiej użyć ustalonej liczby gwiazdek - im mniej wskazówek, tym lepiej. Oczywiście, ponieważ ci, że oczywiście być mieszania hasło (z solą) i przechowywanie tylko hash, nie można poznać rzeczywistą długość i tak ;-P

+1

Działa świetnie. Dziękuję Ci. – user

+1

Ustalona liczba gwiazdek nie ma sensu dla pola wprowadzania hasła. Jeśli masz zamiar dać użytkownikowi żadnej opinii, to równie dobrze możesz nie wyświetlać niczego. – Joren

0

Innym rozwiązaniem byłoby:

Console.Write(System.Text.RegularExpressions.Regex.Replace("test",".", "*")); 
+1

Z punktu widzenia wydajności, byłoby niezwykle nierozsądne stworzenie obiektu Regex do takich celów jak ten. Powyższe metody łańcuchowe byłyby bardziej wydajne. – Qwerty

+0

Tak, wiem, ale wygląda na to, że pytanie nie zadawało żadnego trafienia. – daxsorbito

+1

Utwórz kopię zapasową "z perspektywy wydajności ... nierozsądnie, aby utworzyć obiekt Regex". Chociaż może nie być tu idealnym rozwiązaniem, to pachnie jak zły przypadek "przedwczesnej optymalizacji zgadywania". –

0
var message = "hello world" ; 
var newMessage = new String('*', message.Length); 
+0

Użyj message.Length zamiast –

+0

uzgodniona, głupia literówka. dzięki! – Qwerty

Powiązane problemy