1. #1
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    8.102
    Thanked 9.406 Times in 3.242 Posts
    Blog Entries
    5

    Standard Identity Generator (fakenamegenerator.com)

    Der IdentityGenerator generiert auf basis eines Geschlechts und eines Altersbereiches eine Deutsche Zufallsidentität, bestehend aus Vorname, Nachname und Alter.
    Hierfür wird die Seite fakenamegenerator.com genutzt.

    IdentityGenerator.cs
    [highlight=csharp]
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Net;
    using System.IO;
    using System.Text.RegularExpressions;

    namespace IdentityManager {
    class IdentityGenerator {
    public static Identity Generate(int minAge, int maxAge, Gender gender) {
    string src = GetRawData(minAge, maxAge, gender);
    if (src == null)
    return null;

    Match name = Regex.Match(src, @"<h3>([\w]+) ([\w]+)</h3>");
    Match age = Regex.Match(src, @"([0-9]{1,2}) years old");
    int _age = -1;
    if (age.Success)
    int.TryParse(age.Groups[1].Value, out _age);

    Identity identity = new Identity(_age, gender, name.Groups[1].Value, name.Groups[2].Value);
    return identity;
    }

    private static string GetRawData(int minAge, int maxAge, Gender gender) {
    int male = (gender == Gender.Male) ? 100 : 0;
    string url = string.Format("http://de.fakenamegenerator.com/advanced.php?n%5B%5D=gr&c%5B%5D=gr&gen={0}&age-min={1}&age-max={2}", male, minAge, maxAge);
    try {
    HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
    req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1";
    string resp = new StreamReader(req.GetResponse().GetResponseStream() ).ReadToEnd();
    return resp;
    } catch (Exception) {
    return null;
    }
    }
    }
    }
    [/highlight]

    Identity.cs
    [highlight=csharp]
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace IdentityManager {
    class Identity {
    int _age;
    Gender _gender;
    string _firstName;
    string _lastName;

    public int Age {
    get { return _age; }
    }

    public Gender Gender {
    get { return _gender; }
    }

    public string FirstName {
    get { return _firstName; }
    }

    public string LastName {
    get { return _lastName; }
    }

    public Identity(int age, Gender gender, string firstName, string lastName) {
    _age = age;
    _gender = gender;
    _firstName = firstName;
    _lastName = lastName;
    }
    }
    }
    [/highlight]

    Gender.cs
    [highlight=csharp]
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace IdentityManager {
    enum Gender {
    Male,
    Female
    }
    }
    [/highlight]

    Beispielprogramm, dass drei Männliche Datensätze zwischen 17 und 27 ausgibt:

    [highlight=csharp]
    class Program {
    static void Main(string[] args) {
    for (int i = 0; i < 3; i++) {
    Identity identity = IdentityGenerator.Generate(17, 27, Gender.Male);
    if (identity != null) {
    Console.WriteLine("Vorname: {0}\nNachname: {1}\nAlter: {2}\nGeschlecht: {3}\n", identity.FirstName, identity.LastName, identity.Age, identity.Gender);
    } else {
    Console.WriteLine("Fehler beim generieren der Identität!");
    }
    }
    Console.Read();
    }
    }
    [/highlight]

    Projektmappe mit Beispielprogramm befindet sich im Anhang.


  2. The Following 2 Users Say Thank You to DMW007 For This Useful Post:

    Gurke (08.09.2012), Snees (09.08.2012)

Ähnliche Themen

  1. Release SQL-Generator
    Von Snees im Forum Showroom
    Antworten: 5
    Letzter Beitrag: 05.08.2012, 00:02
  2. .PSD 3D Map Generator
    Von .MrsError im Forum Ressourcen
    Antworten: 8
    Letzter Beitrag: 05.07.2012, 18:41
  3. VB.Net Generator
    Von Shane im Forum .Net
    Antworten: 2
    Letzter Beitrag: 12.06.2012, 15:26
  4. VB.Net PW Generator
    Von Shane im Forum .Net
    Antworten: 3
    Letzter Beitrag: 12.06.2012, 08:36

Stichworte

Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.