繁体   English   中英

如何在C#中轻松地从控制台或文件中的用户获取输入?

[英]How to take the input from user in console or file with ease in c#?

我是C ++用户,现在尝试使用c#。

在c ++中,来自用户的输入很有趣(仅>>),并且支持所有类型。 文件也是如此。 但是在c#中它太复杂了,因为我只能接受字符串。 然后,我必须对其进行处理以供以后使用。

而且,如果我想在同一行中用空格隔开多个输入,则变得更加复杂,因为我必须进行字符串分割。 然后转换...

可能是用于错误处理和安全代码。 但是我还是对C#感到失望。

你们都是专家。 有什么简单的方法吗?

最终,它不需要太多包装-您只需要缓冲当前行并读取所需格式的输入即可。 但是IMO,一点split / TryParse等很少会带来伤害。

我不确定100%可以接受>>的预期格式,但是我怀疑这样做很难。 我不是自愿写它的;-p

正如已经回答的那样,C#不支持此功能。 根本没有流的<<或>>重载,并且当存在TextWriter.WriteLine(“”,...)时,没有相应的带有可变参数列表的TextReader.ReadLine()。

我会猜测为什么 :dat cin理解的由空格分隔的数据格式已经不再使用了。

据我所知,您必须用困难的方式做到这一点。 (尽管从好的方面来说,困难的方法比在C ++中更简单;)

Console.OpenStandardInput()确实为您提供了输入流,因此可以将其与文件一样对待,但是如果需要,您必须自己进行字符串分割。 当然,C#有一个不错的Regex库,在这里可能会有所帮助。

T.TryParse(其中T是int,float,无论您想读取哪种类型)都应允许您将字符串转换为这些类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM