Permalänk
Medlem

Skriva till filler hjälp

Hej,
Jag behöver hjälp med koden eftersom jag behöver skriva spel resultat till en fil.txt men jag vet inte hur jag kan göra det.
Jag är student och jag skrev hela kod men jag har problem med den skriva spel resultat till filen.
Snälla hjälpa

Min kod :

using System; using System.Collections.Generic; namespace dartspel { class Program { static void Main(string[] args) { var MyGame = new Game(); //program startar MyGame.PlayGame(); Console.WriteLine("tryck på valfri tangent för att fortsätta"); Console.ReadKey(); } } class Game //Klassen game har en lista med player-objekt. //Denna klass har också en metod för att lägga till nya spelare (AddPlayer) och har en sträng som in-parameter som sätter namnet på spelaren. //Metoden PlayGame där programmet körs och där man välkomnas till programmet och börjar skriva in spelare. { private List<Player> nameList = new List<Player>(); public void AddPlayer(string name) { Player players = new Player(name); nameList.Add(players); } public void PlayGame() { int arrow1; int arrow2; int arrow3; int total = 0; int winner = 301; Random slumptal = new Random(); Console.WriteLine("Välkommen till dart 301"); Console.WriteLine("Ange hur många ni är som spelar:"); int numberPlayers = int.Parse(Console.ReadLine()); for (int i = 0; i < numberPlayers; i++) { Console.WriteLine("Ange namnen på spelarna"); string playerName = Console.ReadLine(); AddPlayer(playerName); } do { foreach (var player in nameList) { Console.WriteLine("Det är {0}'s tur. Skriv in tre kast mellan 1-20", player); arrow1 = int.Parse(Console.ReadLine()); if (arrow1 > 20 || arrow1 < 0) { Console.WriteLine("Ange endast ett tal mellan 1-20!"); --arrow1; } arrow2 = int.Parse(Console.ReadLine()); if (arrow2 > 20 || arrow2 < 0) { Console.WriteLine("Ange endast ett tal mellan 1-20!"); --arrow2; } arrow3 = int.Parse(Console.ReadLine()); if (arrow3 > 20 || arrow3 < 0) { Console.WriteLine("Ange endast ett tal mellan 1-20!"); --arrow3; } player.AddThrows(arrow1, arrow2, arrow3); total = player.CalculatePoints(); } } while (total <= winner); if (total >= winner) { Console.WriteLine("Vi har en vinanre!!\n"); } foreach (var player in nameList) { player.PrintTurns(); } } class Player //Klassen player har en variabel för namn och en lista för turns. { private string name { get; set; } private List<Turns> throwList = new List<Turns>(); public Player(string _name) { name = _name; } public void AddThrows(int kast1, int kast2, int kast3) { throwList.Add(new Turns(kast1, kast2, kast3)); } public int CalculatePoints() //Denna metod loopar genom hela listan för objekten turns i listan för att få fram den totalla summan poäng som en spelare hittills har fått. { int score = 0; foreach (var turns in throwList) { score = score + turns.GetScore(); } return score; } public void PrintTurns() { Console.WriteLine("Statistik för spelare {0}", name); Console.WriteLine("----------------------------------------------"); foreach (var turns in throwList) { Console.WriteLine(turns); } Console.WriteLine("----------------------------------------------"); Console.WriteLine("Totalpoängen för {1} {0}\n", CalculatePoints(), name); } public override string ToString() { return name; } } class Turns //Denna klass innehåller inkapslade (privata) variabler/fält och metoder kopplat till en pilomgång. { private int throwOne; private int throwTwo; private int throwThree; public Turns(int throw1, int throw2, int throw3) { throwOne = throw1; throwTwo = throw2; throwThree = throw3; } public int GetScore() //Denna metod returnerar den sammanlagda poängen för det objektet(det vill säga en pilomgång). { int totalt = throwOne + throwTwo + throwThree; return totalt; } public override string ToString() { return string.Format("Kasst ett: {0}, Kasst två: {1}, Kasst tre {2} ", throwOne, throwTwo, throwThree); } } } }

Satte code-taggar
Permalänk
Medlem

Exakt vad ska du skriva? Googla om StreamWriter.

Permalänk
Moderator
Brons i quiz

@svati: Dåligt bemötande mot andra medlemmar kommer inte resultera att någon vill hjälpa dig. Vill du ha hjälp, var trevlig.

/Vzano - Moderator

Visa signatur

Citera om du vill ha svar!
Tycker du om sidospår? :D Besök The Wiki Game
Har du fråga angående modereringen? PM till Moderatorerna eller Kontaktformulär

Permalänk
Medlem

Jag skrev rätt . Om någon vill inte hjälpa skriver ett ord för att känna sig att är bättre.

Skrivet av Vzano:

@svati: Dåligt bemötande mot andra medlemmar kommer inte resultera att någon vill hjälpa dig. Vill du ha hjälp, var trevlig.

/Vzano - Moderator

Permalänk
Medlem
Skrivet av svati:

Jag skrev rätt . Om någon vill inte hjälpa skriver ett ord för att känna sig att är bättre.

Vet inte vad du skrev eller som hände.
Men jag ställde en fråga om vad du ska skriva till filen. Spelresultatet, antal kast, antal poäng per kast? Sån information är väsentlig att veta.
Sen gav jag dig klassen du använder för att skriva till textfiler, det finns många exempel om du googlar.
Ska man syssla med programmering är googling och läsa dokumentationen något du dagligen kommer att syssla med, så lika bra att du lär dig söka information själv redan nu.

När du har försökt och fortfarande inte fått till det så kan du dela den koden för att få hjälp att felsöka.
Ingen här kommer göra din läxa åt dig.

Permalänk
Hedersmedlem

@svati
Tog mig friheten att sätta code-taggar runt din kod så att den blir lättare att läsa.

/Giplet, Moderator

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem

Teori är inte praktisk kunskap det är stor skillnad.
Jag behöver skriva spel resultat till txt filen ingenting mer.
Tyvärr vet inte jag var skriva( i den samma kod eller koppla men nån fil och vad måste jag skriva.

Skrivet av zaibuf:

Vet inte vad du skrev eller som hände.
Men jag ställde en fråga om vad du ska skriva till filen. Spelresultatet, antal kast, antal poäng per kast? Sån information är väsentlig att veta.
Sen gav jag dig klassen du använder för att skriva till textfiler, det finns många exempel om du googlar.
Ska man syssla med programmering är googling och läsa dokumentationen något du dagligen kommer att syssla med, så lika bra att du lär dig söka information själv redan nu.

När du har försökt och fortfarande inte fått till det så kan du dela den koden för att få hjälp att felsöka.
Ingen här kommer göra din läxa åt dig.

Permalänk
Medlem

Hmmm hur jag kan göra det här ? Jag är här andra gång

Skrivet av giplet:

@svati
Tog mig friheten att sätta code-taggar runt din kod så att den blir lättare att läsa.

/Giplet, Moderator

Permalänk
Hedersmedlem
Skrivet av svati:

Hmmm hur jag kan göra det här ? Jag är här andra gång

Du kan använda BB-kod och smilies för att formatera texten. https://sv.wikipedia.org/wiki/BBCode

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem
Skrivet av svati:

Teori är inte praktisk kunskap det är stor skillnad.
Jag behöver skriva spel resultat till txt filen ingenting mer.
Tyvärr vet inte jag var skriva( i den samma kod eller koppla men nån fil och vad måste jag skriva.

https://www.dotnetperls.com/streamwriter

Permalänk
Medlem

Programmering ? Nej för mig . Jag har bara depression efter den jävla uppdrag.
Ingen hjälpte men tack för alla som ville eller inte .

Permalänk
Medlem
Skrivet av svati:

Programmering ? Nej för mig . Jag har bara depression efter den jävla uppdrag.
Ingen hjälpte men tack för alla som ville eller inte .

Jag tror de flesta har lite svårt att förstå exakt vad du behöver hjälp med.

En tipsade dig om StreamWriter (som du bör använda). Men sen är det du som behöver sätta in den i koden beroende på vad du faktiskt vill skriva till filen.

Exempel på StreamWriter:

// true = append using (var writer = new System.IO.StreamWriter(@C:\Users\testing.txt, true)) { writer.WriteLine("testing"); writer.WriteLine("new line testing"); }

Permalänk
Medlem

Nog kan det vara frustrerande när man inte förstår, vi har alla vart där. Sov på saken och försök igen i morrn, tänker du samma sak då så kanske programmering inte är något för dej. Programmering kräver disciplin och tar enormt mycket tid, den mesta tiden brukar gå åt att söka information och förstå problemen som dyker upp, själva kodskrivandet brukar gå ganska fort. Även när man jobbat med programmering i 10-20 år så är det samma visa, det är inget man kommer ifrån.

Permalänk
Medlem

Jag vet det som du skrev att jag måste skriva men jag vet inte VAR i min koden som jak lämnade uppe, eller jag måste skappa nån fil och koppla med koden. Jag gör det första gång i livet

Skrivet av Forsgren:

Jag tror de flesta har lite svårt att förstå exakt vad du behöver hjälp med.

En tipsade dig om StreamWriter (som du bör använda). Men sen är det du som behöver sätta in den i koden beroende på vad du faktiskt vill skriva till filen.

Exempel på StreamWriter:

// true = append using (var writer = new System.IO.StreamWriter(@C:\Users\testing.txt, true)) { writer.WriteLine("testing"); writer.WriteLine("new line testing"); }

Permalänk
Medlem

Jag gör det första gång. Tänk på det

Skrivet av Dalton Sleeper:

Nog kan det vara frustrerande när man inte förstår, vi har alla vart där. Sov på saken och försök igen i morrn, tänker du samma sak då så kanske programmering inte är något för dej. Programmering kräver disciplin och tar enormt mycket tid, den mesta tiden brukar gå åt att söka information och förstå problemen som dyker upp, själva kodskrivandet brukar gå ganska fort. Även när man jobbat med programmering i 10-20 år så är det samma visa, det är inget man kommer ifrån.

Permalänk
Medlem
Skrivet av svati:

Jag vet det som du skrev att jag måste skriva men jag vet inte VAR i min koden som jak lämnade uppe, eller jag måste skappa nån fil och koppla med koden. Jag gör det första gång i livet

Vi vet inte riktigt vad du skall skriva ut, vilket försvårar det för oss en del. Om det endast är resultat (globalt hiscore) eller om det är namn samt resultat. Sedan om det gör något om du läggar till samma namn igen eller om du ska uppdatera existerande namn med högsta poäng. Förstår du nu att vi är förvirrade?

Mitt tips är att du skapar en funktion (SaveScoreToFile(string name, int score) i samma class där du avgör vinnaren) som skriver ner namn på en rad samt poäng på en annan rad. Skapa upp en mapp på din c:/ som heter DartScores där du senare sparar din nya fil. Skapa en StreamWriter med sökvägen "C:/DartScores/Scores.txt" i din nedsparningsfunktion och skriv ner namn och poäng på varsin rad.

Under raden Console.WriteLine("Vi har en vinanre!!\n"); så anropar du SaveScoreToFile med namnet på vinnaren samt poängen.

Filstruktur:
Sven
50
Yngve
100
...

Permalänk
Medlem

Om du skrivit all den där där koden så bör du veta vart du ska lägga till din kodrad för att spara slutresultatet till en fil. Just nu känns det bara som du har gjort en copy/paste av någon annans lösning och letar någon som gör det sista åt dig. På det sättet kommer du aldrig att lära dig något.

Din kod som du "skrivit själv" finns i den här tråden
https://m.sweclockers.com/forum/trad/1595113-hjalp-med-en-sis...

Permalänk
Medlem

Titta uppe och lära dig eftersom i världen är det många Bättre människor som vill hjälpa än du.
Jag känner att du är lite egoist som är inte bra och du gillar känna dig super bäst ! För mig alla är lika och det spela ingen roll för mig om du är programmering specialist, president eller nån kung! Alla är lika och alla var som lilla barn i början du också i programmering. Glömde du ?

Om du skrivit all den där där koden så bör du veta vart du ska lägga till din kodrad för att spara slutresultatet till en fil. Just nu känns det bara som du har gjort en copy/paste av någon annans lösning och letar någon som gör det sista åt dig. På det sättet kommer du aldrig att lära dig något.

Din kod som du "skrivit själv" finns i den här tråden
https://m.sweclockers.com/forum/trad/1595113-hjalp-med-en-sis.... Lycka till med !

Skrivet av zaibuf:

Om du skrivit all den där där koden så bör du veta vart du ska lägga till din kodrad för att spara slutresultatet till en fil. Just nu känns det bara som du har gjort en copy/paste av någon annans lösning och letar någon som gör det sista åt dig. På det sättet kommer du aldrig att lära dig något.

Din kod som du "skrivit själv" finns i den här tråden
https://m.sweclockers.com/forum/trad/1595113-hjalp-med-en-sis...

Permalänk
Hedersmedlem

*Tråd låst*

Iom. att min kollegas tidigare uppmaning ignoreras väljer jag att låsa tråden i enlighet med §1 (otrevlig/otacksam attityd).

Skrivet av Vzano:

@svati: Dåligt bemötande mot andra medlemmar kommer inte resultera att någon vill hjälpa dig. Vill du ha hjälp, var trevlig.

/Vzano - Moderator

Visa signatur

Danskjävel så krattar som en skrivare...