永发信息网

c# 有没有类似JAVA的Scanner类 方便读取一行以空格分开的数据

答案:2  悬赏:70  手机版
解决时间 2021-03-06 02:49
  • 提问者网友:十年饮冰
  • 2021-03-05 19:31
数据一行一行的存储在文本中,每行的数据由空格分开,如何读取;
c#中有没有类似类似JAVA的Scanner类,可以向下面一样方便的取数据
import java.util.Scanner;
public class Test{
public static void main(String args[]){
Scanner scan=new Scanner(System.in);

//将一行中以空格中分开的四个数据分别读入四个整型变量
int p=0;
int e=0;
int i=0;
int d=0;
while (p!=-1) {//或者while (scan.hasNext())
p = scan.nextInt();
e = scan.nextInt();
i = scan.nextInt();
d = scan.nextInt();
System.out.printf("p=%d,e=%d,i=%d,d=%d\n",p,e,i,d);
}
}
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-03-05 19:47
用split

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入一行带空格的数字文本:");
string a = Console.ReadLine();
string[] b = a.Split();

foreach (string c in b)
{
Console.WriteLine(int.Parse(c));
}

Console.Read();
}

}

}
全部回答
  • 1楼网友:醉吻情书
  • 2021-03-05 21:07
public class test{ public static void main(string[] args){ new test().getnum(); system.out.println("-----------------------"); new test().getnum2(); } public void getnum(){ scanner scanner = new scanner(system.in); while(scanner.hasnext()){ int num = scanner.nextint(); system.out.println(num); } } public void getnum2(){ scanner scanner = new scanner(system.in); string str = scanner.nextline(); string[] numlist = str.split("\\s"); for(string s : numlist){ int num = integer.parseint(s); system.out.println(num); } } } 上面这个当是demo, 都是取整数的 1 可以用nextint()取下一个整形, 如果要其他类型, 有nextxxx()方法可以用. 2 读取一行, 得一个字符串, 然后以空格分隔每一个数字
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯