2016-04-15 13 views
0

Ich verwende diesen Code für offene Websites. Wenn ich "google öffnen" sage, öffnet es google:Wie öffne ich mehrere Seiten zufällig?

if (r == "open google") 
{ 
    Process.Start("https://google.com"); 
} 

jetzt, wie kann ich mehrere Aufstellungsorte nach dem Zufall öffnen? Ich meine, wenn ich sage, was los ist offen eine dieser Sites zufällig: http://www.pcmag.com, https://www.ehow.com ...

ich diesen Code versucht, vor, aber meine Software geöffnet alle Seiten:

if (r == "what's new" || r == "what's up") 
{ 

    Process.Start("http://www.pcmag.com"); 
    Process.Start("https://www.ehow.com"); 
    Process.Start("http://www.zdnet.com"); 
    Process.Start("http://www.empireonline.com"); 
} 
+1

Platzieren Sie sie in einem Array, generieren Sie dann eine Zufallszahl zwischen 0 und 1 kleiner als die Größe der Sammlung und greifen Sie dann auf den Speicherort dieser Zufallszahl zu. – npinti

Antwort

2
private static void OpenRandomSite() 
{ 
    var sites = new [] 
    { 
     "http://www.pcmag.com", 
     "https://www.ehow.com", 
     "http://www.zdnet.com" 
    }; 

    var rnd = new Random(); 

    Process.Start(sites[rnd.Next(sites.Length)]); 
} 

Ihr Code wird wie folgt sein:

switch(r) 
{ 
    case "open google": 
     Process.Start("https://google.com"); 
     break; 

    case "what's up": 
     OpenRandomSite(); 
     break; 
} 
+0

danke - nur eine Sache, ich möchte diese zufällige Seite mit meiner Stimme öffnen (ich benutze Spracherkennung in meiner Software). if (r == "Was ist neu" || r == "Was ist los?") { Process.Start (OpenRandomSite()); } r bedeutet = record - wenn ich process.start benutze zeige es mir einen Fehler, der nicht void in string konvertieren kann. wie man es repariert? –

+0

Siehe Bearbeiten zu meiner Antwort :) –

+0

Vielen Dank :)) –

0

diese Funktion wird eine zufällige uRL zurück:

public List<string> Sites = new List<string>() 
{ 
    "http://www.google.com", 
    "http://www.yahoo.com", 
    "http://www.somethingelse" 
}; 

Random randomizer = new Random(); 

public string RandomSite() 
{ 
    int r = randomizer.Next(Sites.Count); 
    return Sites[r]; 
} 

Die Verwendung ist selbst erklärt: RandomSite() wird eine zufällige URL aus Ihrer Sammlung zurückgeben.