C# 在C语言中如何从一个读取行中分离两个整数#
如何在C#中获取一个“Console.ReadLine()”并将其划分为两个整数? 假设我有这个C# 在C语言中如何从一个读取行中分离两个整数#,c#,C#,如何在C#中获取一个“Console.ReadLine()”并将其划分为两个整数? 假设我有这个 Please enter your #'s: 123 234 your two #'s were 123 and 234 我该怎么做呢?试试这样的方法: using System; using System.Linq; class Program { static void Main() { var input = Console.ReadLine();
Please enter your #'s: 123 234
your two #'s were 123 and 234
我该怎么做呢?试试这样的方法:
using System;
using System.Linq;
class Program
{
static void Main()
{
var input = Console.ReadLine();
var values = input.Split(' ')
.Select(int.Parse);
}
}
如果您担心用户在数字之间输入多个空格,可以执行以下操作:
using System;
using System.Linq;
class Program
{
static void Main()
{
var input = Console.ReadLine();
var values = input.Split(new[] {" "},
StringSplitOptions.RemoveEmptyEntries)
.Select(int.Parse);
}
}
当然,如果用户不提供值或者值不是数字,那么这两个例子都会爆炸。不过,这会让你走上正确的道路。如果你的线路没有那么复杂,你可以使用它 字符串,拆分 例如:
using (StreamReader sr = new StreamReader(file))
{
string lineIn = string.Empty;
while ((lineIn = sr.ReadLine()) != null)
{
string[] numbersAsStrings = lineIn.Split(' ');
}
}
如果整数之间需要多个空格,可以执行正则表达式拆分:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
class Program
{
static void Main(string[] args)
{
var str = Console.ReadLine();
Regex regex = new Regex(@"\s+");
var intArrary = regex.Split(str).Select(x => int.Parse(x));
}
}
实际上,我所要做的就是string-lineIn=Console.ReadLine();字符串[]numbersAsStrings=lineIn.Split(“”);Console.WriteLine(数字串[0]);Console.WriteLine(数字串[1]);