Je veux simplement entrer les numéros suivants
int numberOfElements = Convert.ToInt32(Console.ReadLine()); int sum = 0; string input = Console.ReadLine(); var numbers = Array.ConvertAll(input.Split(' '), int.Parse).ToList(); Console.ReadKey();
3 Réponses :
Évidemment lorsque vous collez dans les retours de chariot, readline code> ne prend que le premier retour de chariot, vous aurez besoin d'une boucle de certaines description
int numberOfElements = Convert.ToInt32(Console.ReadLine());
var sb = new StringBuilder();
for (int i = 0; i < numberOfElements; i++)
{
Console.WriteLine($"Enter value {i+1}");
sb.AppendLine(Console.ReadLine());
}
var input = sb.ToString();
// do what ever you want here
Console.ReadKey();
Vérifiez ceci: p> Fiddle de travail P> P> console.readline () code> ne lit qu'une ligne.
Entrée de chaîne = console.readline () code> lit première ligne lorsque vous entrez dans une nouvelle ligne. Dans votre cas, la première ligne est lue alors pour la deuxième ligne que votre programme ne reçoit que le premier caractère et les sorties.
Je suppose que vous recherchez un moyen de permettre à un utilisateur de coller quelque chose d'une autre source dans votre programme de console, vous recherchez donc une réponse où vous pouvez traiter une entrée de chaîne multiligne de la utilisateur (où ils collectent une chaîne contenant un ou plusieurs caractères de nouvelle ligne).
Si tel est le cas, alors un moyen de faire cela serait de vérifier la valeur de Par exemple, voici un méthode qui prend une invite (à afficher à l'utilisateur), puis renvoie une liste console. / code> après le premier appel à
readline code> pour voir s'il y a encore plus d'entrées dans le tampon, et s'il y en a, ajoutez-le à l'entrée que vous avez déjà capturée. p>
Console.WriteLine($"\n{string.Join(" + ", numbers)} = {numbers.Sum()}");
À quel
console.readline () code> saisissez-vous cette valeur?
Ah oui, désolé - entrée
La première entrée (chaîne)
"100 8" code> n'est pas un nombre, évidemment. (Notez l'espace blanche entre les 0 et les 8) Ainsi, votre première ligne de code
int numérumements = convert.toint32 (console.readline ()); code> échouera déjà.
Si vous ne voyez pas l'exception, je suppose que vous utilisez un
essayer code> -
clause code> avec un bloc code> vide code> bloc. Si c'est bien le cas, alors ne faites pas cela. Un try-catch avec un bloc de capture vide serait équivalent à cela ici: YouTube.com/watch? v = pdfl__nlopa . (Cela dit, je suis simplement spéculant ici sur ce que vous faites dans votre code ...)