如何在C#中使用「Console.ReadLine()」並將其分成兩個整數? 比方說,我有這個如何從C#中的ReadLine中分離兩個Ints?
Please enter your #'s: 123 234
your two #'s were 123 and 234
怎麼會做呢?
如何在C#中使用「Console.ReadLine()」並將其分成兩個整數? 比方說,我有這個如何從C#中的ReadLine中分離兩個Ints?
Please enter your #'s: 123 234
your two #'s were 123 and 234
怎麼會做呢?
如果你的行不那麼複雜,你可以使用
string.Split
例子:
using (StreamReader sr = new StreamReader(file))
{
string lineIn = string.Empty;
while ((lineIn = sr.ReadLine()) != null)
{
string[] numbersAsStrings = lineIn.Split(' ');
}
}
嘗試這樣:
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 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));
}
}
其實我所要做的只是 – Matt 2010-11-28 01:05:33