C# Fundamentals: Invoer en Uitvoer Basis
C# Fundamentals: Invoer en Uitvoer Basis
Deze gids leidt u door de kern van C# invoer- en uitvoertechnieken, en toont hoe u gebruikersgegevens leest en resultaten betrouwbaar weergeeft.
C# Uitvoer
Om data naar de console te schrijven, biedt C# twee primaire methoden:
System.Console.WriteLine()
System.Console.Write()
Hierbij is System de namespace, Console een klasse binnen die namespace, en WriteLine en Write zijn methodes ervan.
Voorbeeld 1: Een String Printen met WriteLine()
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
Console.WriteLine("C# is cool");
}
}
}
Het uitvoeren van het programma produceert:
C# is cool
Verschil Tussen WriteLine() en Write()
WriteLine() geeft de opgeleverde tekst weer en gaat naar een nieuwe regel, terwijl Write() tekst print zonder een regelterugloop toe te voegen.
Voorbeeld 2: WriteLine() en Write() Gebruiken
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
Console.WriteLine("Print op ");
Console.WriteLine("Nieuwe regel");
Console.Write("Print op ");
Console.Write("Dezelfde regel");
}
}
}
Output:
Print op Nieuwe regel Print op Dezelfde regel
Variabelen en Literalen Printen
Zowel WriteLine() als Write() kunnen variabelen en literalen weergeven.
Voorbeeld 3: Variabelen en Literalen
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
int value = 10; // Variabele
Console.WriteLine(value); // Literal
Console.WriteLine(50.05);
}
}
}
Resultaat:
10 50.05
Strings Samenvoegen met de + Operator
Strings kunnen gecombineerd worden met de + operator tijdens uitvoer.
Voorbeeld 4: Samengevoegde Uitvoer
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
int val = 55;
Console.WriteLine("Hello " + "World");
Console.WriteLine("Value = " + val);
}
}
}
Resultaat:
Hello World Value = 55
Geformatteerde Strings — Een Schonere Aanpak
Geformatteerde strings laten u plaatsaanduiders insluiten die tijdens runtime worden vervangen, wat de leesbaarheid verbetert en fouten vermindert.
In plaats van:
Console.WriteLine("Value = " + val);
gebruikt u:
Console.WriteLine("Value = {0}", val);
Hier is {0} een plaatsaanduider voor val. Meerdere variabelen worden afgehandeld met extra plaatsaanduidingen.
Voorbeeld 5: String Formattering Gebruiken
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
int firstNumber = 5, secondNumber = 10, result;
result = firstNumber + secondNumber;
Console.WriteLine("{0} + {1} = {2}", firstNumber, secondNumber, result);
}
}
}
Output:
5 + 10 = 15
Deze methode is leesbaarder en minder foutgevoelig dan handmatige concatenatie.
Meer over string formatting in C# string formatting.
C# Invoer
De meest directe manier om gebruikersinvoer te vangen is Console.ReadLine(). Voor meer gedetailleerde invoer zijn Read() en ReadKey() ook beschikbaar.
Voorbeeld 6: Een String van de Gebruiker Lezen
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
string testString;
Console.Write("Voer een string in - ");
testString = Console.ReadLine();
Console.WriteLine("U heeft '{0}' ingevoerd", testString);
}
}
}
Output:
Voer een string in - Hello World U heeft 'Hello World' ingevoerd
ReadLine(), Read(), en ReadKey() Begrijpen
- ReadLine(): Leest een volledige regel uit de invoerstroom en retourneert deze als string.
- Read(): Leest het volgende teken en retourneert de ASCII-waarde.
- ReadKey(): Vangt een toetsaanslag op zonder op Enter te wachten; handig voor pauzeprompts.
Voor diepere inzichten, zie de StackOverflow discussie "Difference between Console.Read() and Console.ReadLine?".
Voorbeeld 7: Read() en ReadKey() Demonstreren
using System;
namespace Sample {
class Test {
public static void Main(string[] args) {
int userInput;
Console.WriteLine("Druk op een toets om door te gaan...");
Console.ReadKey();
Console.WriteLine();
Console.Write("Invoer met Read() - ");
userInput = Console.Read();
Console.WriteLine("Ascii Waarde = {0}", userInput);
}
}
}
Output:
Druk op een toets om door te gaan... x Invoer met Read() - Learning C# Ascii Waarde = 76
Let op dat ReadKey() de toets direct toont, terwijl Read() een regel vastlegt maar alleen de ASCII-code van het eerste teken retourneert (hier 76 voor 'L').
Numerieke Waarden Lezen
Terwijl strings direct worden gelezen, vereisen numerieke typen conversie. De Convert klasse biedt eenvoudige methodes.
Voorbeeld 8: Gebruikersinvoer Converteren naar Getallen
using System;
namespace UserInput {
class MyClass {
public static void Main(string[] args) {
string userInput;
int intVal;
double doubleVal;
Console.Write("Voer integer waarde in: ");
userInput = Console.ReadLine();
intVal = Convert.ToInt32(userInput);
Console.WriteLine("U heeft {0} ingevoerd", intVal);
Console.Write("Voer double waarde in: ");
userInput = Console.ReadLine();
doubleVal = Convert.ToDouble(userInput);
Console.WriteLine("U heeft {0} ingevoerd", doubleVal);
}
}
}
Resultaat:
Voer integer waarde in: 101 U heeft 101 ingevoerd Voer double waarde in: 59.412 U heeft 59.412 ingevoerd
De ToInt32() en ToDouble() methodes van Convert transformeren de invoerstring naar het gewenste numerieke type. Een volledige lijst met conversiemethodes is te vinden in de .NET documentatie.
Ontdek alternatieve strategieën voor numerieke invoer in Reading an integer from user input.
C Taal
- Een externe temperatuursensor bouwen met Raspberry Pi en Python – Stap-voor-stap handleiding
- Analoge sensoren verbinden met Raspberry Pi via MCP3008 – Bedrading, SPI-setup en voorbeeld Python-code
- Mailboxes in Nucleus SE: Een Practische Gids voor Configuratie en Gebruik
- Semaphores in Nucleus SE: Overzicht, Configuratie en API-Essenties
- Queues in Nucleus SE: Introductie en Kern-Service-Calls
- Cloudhorizonten Uitbreiden: Nieuwe Zones, Containers En Multicloud-strategieën
- Waarom Cloud Linux Beveiliging, Stabiliteit en Prestaties in Shared Hosting Verbetert
- C++ input en output: een praktische gids
- C Input en Output (I/O) Beheersen: scanf() en printf() Uitgelegd
- Python I/O en Module Imports onder de knie krijgen: Een praktische gids
- Java Input & Output beheersen: printen, lezen en formatteren